#cd /etc/sysconfig/network-scripts/ifcfg-e?????
修改:
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.*.*
NETMASK=255.255.255.0
GATEWAY=192.168.*.*
#service network restart
【关闭防火墙并检查】
#service iptables status
第一步:
#mkdir -p /upload/oracleRelateRpm
上传下载好的oracle 11g r2安装所需的rpm包
系统已有,但可更新的包:
#rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm
#rpm -ivh elfutils-libelf-devel-0.163-3.el7.x86_64.rpm
#rpm -ivh elfutils-libelf-devel-static-0.163-3.el7.x86_64.rpm
#rpm -ivh glibc-static-2.17-105.el7.x86_64.rpm
#rpm -ivh ksh-20120801-22.el7_1.3.x86_64.rpm
#rpm -ivh libaio-devel-0.3.109-13.el7.x86_64.rpm
#rpm -ivh libtool-ltdl-2.4.2-21.el7_2.x86_64.rpm(安装完整桌面版的centos7存在文件冲突,可不操作此步;而最小安装模式则需要)
#rpm -ivh unixODBC-2.3.1-11.el7.x86_64.rpm
#rpm -ivh unixODBC-devel-2.3.1-11.el7.x86_64.rpm
预检测阶段提示缺失包:
glibc-static-2.14.90-14.x86_64.rpm glibc-static-2.17-55.el7.x86_64.rpm compat-libstdc++-33-3.2.3-72.el7.i686.rpm unixODBC-devel-2.2.11-2.i386.rpm unixODBC-2.2.11-7.1.i386.rpm libstdc++-3.4.6-3.i386.rpm libgcc-3.4.6-8.i386.rpm libaio-devel-0.3.105-2.i386.rpm compat-libstdc++-33-3.2.3-61.i386.rpm glibc-2.3.4-2.41.i686.rpm
第二步:
上传下载好的oracle11g_R2_database,然后执行以下准备工作:
1、root用户:创建Oracle安装组oinstall,数据库管理员组dba,及oracle用户
# /usr/sbin/groupadd oinstall
# /usr/sbin/groupadd dba
# /usr/sbin/useradd -g oinstall -G dba oracle(主组oinstall,其它组:dba)
或者:
usermod -g oinstall -G dba -d /home/oracle oracle
-g为指定用户的主要组为oinstall组
-G为指定用户的次要组为dba组
-d为指定用户的主目录
语句详细定义为将Oracle用户的主要组指定为oinstall
次要组指定为dba
并指定Oracle用户的主目录为/home/oracle
# passwd oracle
2、root用户:修改 /etc/sysctl.conf 文件,加上如下参数
# vi /etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 956753920
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
或者其中kernel.shmmax = 536870912
为使上述配置生效而不重启系统,执行如下命令
# /sbin/sysctl -p
3、root用户:修改/etc/security/limits.conf文件,加上下面的参数
# vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
4、root用户下:修改/etc/pam.d/login文件加上如下参数
# vi /etc/pam.d/login
session required pam_limits.so
5、root用户下:修改/etc/profile文件加入如下参数
# vi /etc/profile
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
# source /etc/profile
6、安装目录配置
root用户:
# mkdir -p /u01/oraInventory
# chown -R oracle:oinstall /u01/
# chmod -R 775 /u01/
7、修改oracle用户的bash shell
#su – oracle
$ vi ~/.bash_profile
增加如下内容,主要是修改
export ORACLE_BASE=/u01/app/oraInventory
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=testdb22
export ORA_CRS_HOME=$ORACLE_BASE/crs
export ORACLE_PATH=$ORACLE_BASE/common/oracle/sql:.:$ORACLE_HOME/rdbms/admin
export PATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:${PATH}:$HOME/bin
export PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
export PATH=${PATH}:$ORACLE_BASE/common/oracle/bin
export ORACLE_TERM=xterm
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORA_NLS10=$ORACLE_HOME/nls/data
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/lib:/usr/local/lib:$ORACLE_HOME/oracm/lib:$ORACLE_HOME/lib:$ORACLE_HOME/sysman/lib
export LIBPATH=$LIBPATH:$ORA_CRS_HOME/lib:$ORACLE_HOME/lib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/jlib:$ORACLE_HOME/network/jlib:$ORACLE_HOME/JRE
export HTREADS_FLAG=native
export TEMP=/tmp
export TMPDIR=/tmp
export NLS_LANG=american_america.WE8ISO8859P1
alias sysdba="sqlplus'/as sysdba'"
export EDITOR=vi
简约版如下:
export ORACLE_BASE=/u01/app/oraInventory
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=testdb22
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/lib:/usr/local/lib:$ORACLE_HOME/oracm/lib:$ORACLE_HOME/lib:$ORACLE_HOME/sysman/lib
完成后执行:
. ~/.bash_profile
#env | grep ORA查看环境变量是否完成
回到root
6、增加虚拟内存swap空间
查看当前虚拟内存
# free -m
# dd if=/dev/zero of=/home/swap bs=1024 count=1024000
# mkswap /home/swap
# swapon /home/swap
# free -m(检查)
[root@localhost Downloads]# ll
total 2487204
drwxr-xr-x. 7 root root 4096 Aug 27 2013 database
-rw-r--r--. 1 root root 1395582860 Mar 29 2016 p13390677_112040_Linux-x86-64_1of7.zip
-rw-r--r--. 1 root root 1151304589 Mar 29 2016 p13390677_112040_Linux-x86-64_2of7.zip
[root@localhost Downloads]# visudo
[root@localhost Downloads]# chown -R oracle:oinstall ./database/
[root@localhost Downloads]# ll
total 2487204
drwxr-xr-x. 7 oracle oinstall 4096 Aug 27 2013 database
-rw-r--r--. 1 root root 1395582860 Mar 29 2016 p13390677_112040_Linux-x86-64_1of7.zip
-rw-r--r--. 1 root root 1151304589 Mar 29 2016 p13390677_112040_Linux-x86-64_2of7.zip
[root@localhost Downloads]# su - oracle
Last login: Sun Feb 19 10:28:20 CST 2017 on pts/1
第三步:
安装过程预检测提示如下:
● 发现即使已经安装了_86x64的包,但还是有些包需要安装i386或i686版本(在前面安装rpm时已经把该情况考虑进去并安装了相关版本软件)
● 然而kernel semmni的提示可以fixable,但运行脚本/tmp/CVU_11.2.0.1.0_oracle/runfixup.sh后,提示The value for semmni in response file is not greater than value for semmni in /etc/sysctl.conf file. Hence not changing it.,仍然无法fix,于是忽略继续安装即可!
安装错误及解决方案:
● 错误一:安装到84%时,错误提示如下,
Error in invoking target 'agent nmhs' of makefile '/u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk'
错误日志如下,
INFO: /lib64/libstdc++.so.5: undefined reference to `memcpy@GLIBC_2.14'
INFO: collect2: error: ld returned 1 exit status
INFO: make: *** [ctxhx] Error 1
原因:glibc的版本2.17过高所致(高于2.14)
解决方案:下 $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK)
载glibc-static-2.14.90-14.x86_64.rpm,用--force --nodeps强制&忽略依赖包安装,该软件包包含一个静态链接库:/usr/lib64/libc.a
修改$ORACLE_HOME/ctx/lib/ins_ctx.mk文件,将
ctxhx: $(CTXHXOBJ)
修改为:
ctxhx: $(CTXHXOBJ)
-static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK) /usr/lib64/stdc.a
点击Retry继续安装。
● 错误二:接着84%的错误,新的错误提示如下,
Error in invoking target 'agent nmhs' of makefile
'/u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk.'
错误日志如下,
/u01/app/oraInventory/product/11.2.0/dbhome_1/lib/libnnz11.so: could not read symbols: Invalid operation
解决方案:在makefile中添加链接libnnz11库的参数
修改$ORACLE_HOME/sysman/lib/ins_emagent.mk,将
$(MK_EMAGENT_NMECTL)
修改为:
$(MK_EMAGENT_NMECTL) -lnnz11
点击Retry继续安装。
安装成功!
====遇到的其他问题====
Error in invoking target 'agent nmhs' of makefile '/home/oracle_11/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk'.
解决过程
vi $ORACLE_HOME/sysman/lib/ins_emagent.mk
Search for the line
$(MK_EMAGENT_NMECTL)
Change it to:
$(MK_EMAGENT_NMECTL) -lnnz11
安装oracle时,如何指定jdk 或者如何解决提示框显示不全
./runInstaller -jreLoc JRE_LOCATION
找到的参数为jreLoc 这样设置后,安装界面的乱码同时也解决了
./runInstaller -jreLoc /usr/local/jdk1.7.0_80/
./runInstaller -jreLoc /usr/local/jdk1.8.0_121/
(先上传jdk,修改相关路径)
修改:
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.*.*
NETMASK=255.255.255.0
GATEWAY=192.168.*.*
#service network restart
【关闭防火墙并检查】
#service iptables status
第一步:
#mkdir -p /upload/oracleRelateRpm
上传下载好的oracle 11g r2安装所需的rpm包
系统已有,但可更新的包:
#rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm
#rpm -ivh elfutils-libelf-devel-0.163-3.el7.x86_64.rpm
#rpm -ivh elfutils-libelf-devel-static-0.163-3.el7.x86_64.rpm
#rpm -ivh glibc-static-2.17-105.el7.x86_64.rpm
#rpm -ivh ksh-20120801-22.el7_1.3.x86_64.rpm
#rpm -ivh libaio-devel-0.3.109-13.el7.x86_64.rpm
#rpm -ivh libtool-ltdl-2.4.2-21.el7_2.x86_64.rpm(安装完整桌面版的centos7存在文件冲突,可不操作此步;而最小安装模式则需要)
#rpm -ivh unixODBC-2.3.1-11.el7.x86_64.rpm
#rpm -ivh unixODBC-devel-2.3.1-11.el7.x86_64.rpm
预检测阶段提示缺失包:
glibc-static-2.14.90-14.x86_64.rpm glibc-static-2.17-55.el7.x86_64.rpm compat-libstdc++-33-3.2.3-72.el7.i686.rpm unixODBC-devel-2.2.11-2.i386.rpm unixODBC-2.2.11-7.1.i386.rpm libstdc++-3.4.6-3.i386.rpm libgcc-3.4.6-8.i386.rpm libaio-devel-0.3.105-2.i386.rpm compat-libstdc++-33-3.2.3-61.i386.rpm glibc-2.3.4-2.41.i686.rpm
第二步:
上传下载好的oracle11g_R2_database,然后执行以下准备工作:
1、root用户:创建Oracle安装组oinstall,数据库管理员组dba,及oracle用户
# /usr/sbin/groupadd oinstall
# /usr/sbin/groupadd dba
# /usr/sbin/useradd -g oinstall -G dba oracle(主组oinstall,其它组:dba)
或者:
usermod -g oinstall -G dba -d /home/oracle oracle
-g为指定用户的主要组为oinstall组
-G为指定用户的次要组为dba组
-d为指定用户的主目录
语句详细定义为将Oracle用户的主要组指定为oinstall
次要组指定为dba
并指定Oracle用户的主目录为/home/oracle
# passwd oracle
2、root用户:修改 /etc/sysctl.conf 文件,加上如下参数
# vi /etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 956753920
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
或者其中kernel.shmmax = 536870912
为使上述配置生效而不重启系统,执行如下命令
# /sbin/sysctl -p
3、root用户:修改/etc/security/limits.conf文件,加上下面的参数
# vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
4、root用户下:修改/etc/pam.d/login文件加上如下参数
# vi /etc/pam.d/login
session required pam_limits.so
5、root用户下:修改/etc/profile文件加入如下参数
# vi /etc/profile
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
# source /etc/profile
6、安装目录配置
root用户:
# mkdir -p /u01/oraInventory
# chown -R oracle:oinstall /u01/
# chmod -R 775 /u01/
7、修改oracle用户的bash shell
#su – oracle
$ vi ~/.bash_profile
增加如下内容,主要是修改
export ORACLE_BASE=/u01/app/oraInventory
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=testdb22
export ORA_CRS_HOME=$ORACLE_BASE/crs
export ORACLE_PATH=$ORACLE_BASE/common/oracle/sql:.:$ORACLE_HOME/rdbms/admin
export PATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:${PATH}:$HOME/bin
export PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
export PATH=${PATH}:$ORACLE_BASE/common/oracle/bin
export ORACLE_TERM=xterm
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORA_NLS10=$ORACLE_HOME/nls/data
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/lib:/usr/local/lib:$ORACLE_HOME/oracm/lib:$ORACLE_HOME/lib:$ORACLE_HOME/sysman/lib
export LIBPATH=$LIBPATH:$ORA_CRS_HOME/lib:$ORACLE_HOME/lib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/jlib:$ORACLE_HOME/network/jlib:$ORACLE_HOME/JRE
export HTREADS_FLAG=native
export TEMP=/tmp
export TMPDIR=/tmp
export NLS_LANG=american_america.WE8ISO8859P1
alias sysdba="sqlplus'/as sysdba'"
export EDITOR=vi
简约版如下:
export ORACLE_BASE=/u01/app/oraInventory
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=testdb22
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/lib:/usr/local/lib:$ORACLE_HOME/oracm/lib:$ORACLE_HOME/lib:$ORACLE_HOME/sysman/lib
完成后执行:
. ~/.bash_profile
#env | grep ORA查看环境变量是否完成
回到root
6、增加虚拟内存swap空间
查看当前虚拟内存
# free -m
# dd if=/dev/zero of=/home/swap bs=1024 count=1024000
# mkswap /home/swap
# swapon /home/swap
# free -m(检查)
[root@localhost Downloads]# ll
total 2487204
drwxr-xr-x. 7 root root 4096 Aug 27 2013 database
-rw-r--r--. 1 root root 1395582860 Mar 29 2016 p13390677_112040_Linux-x86-64_1of7.zip
-rw-r--r--. 1 root root 1151304589 Mar 29 2016 p13390677_112040_Linux-x86-64_2of7.zip
[root@localhost Downloads]# visudo
[root@localhost Downloads]# chown -R oracle:oinstall ./database/
[root@localhost Downloads]# ll
total 2487204
drwxr-xr-x. 7 oracle oinstall 4096 Aug 27 2013 database
-rw-r--r--. 1 root root 1395582860 Mar 29 2016 p13390677_112040_Linux-x86-64_1of7.zip
-rw-r--r--. 1 root root 1151304589 Mar 29 2016 p13390677_112040_Linux-x86-64_2of7.zip
[root@localhost Downloads]# su - oracle
Last login: Sun Feb 19 10:28:20 CST 2017 on pts/1
第三步:
安装过程预检测提示如下:
● 发现即使已经安装了_86x64的包,但还是有些包需要安装i386或i686版本(在前面安装rpm时已经把该情况考虑进去并安装了相关版本软件)
● 然而kernel semmni的提示可以fixable,但运行脚本/tmp/CVU_11.2.0.1.0_oracle/runfixup.sh后,提示The value for semmni in response file is not greater than value for semmni in /etc/sysctl.conf file. Hence not changing it.,仍然无法fix,于是忽略继续安装即可!
安装错误及解决方案:
● 错误一:安装到84%时,错误提示如下,
Error in invoking target 'agent nmhs' of makefile '/u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk'
错误日志如下,
INFO: /lib64/libstdc++.so.5: undefined reference to `memcpy@GLIBC_2.14'
INFO: collect2: error: ld returned 1 exit status
INFO: make: *** [ctxhx] Error 1
原因:glibc的版本2.17过高所致(高于2.14)
解决方案:下 $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK)
载glibc-static-2.14.90-14.x86_64.rpm,用--force --nodeps强制&忽略依赖包安装,该软件包包含一个静态链接库:/usr/lib64/libc.a
修改$ORACLE_HOME/ctx/lib/ins_ctx.mk文件,将
ctxhx: $(CTXHXOBJ)
修改为:
ctxhx: $(CTXHXOBJ)
-static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK) /usr/lib64/stdc.a
点击Retry继续安装。
● 错误二:接着84%的错误,新的错误提示如下,
Error in invoking target 'agent nmhs' of makefile
'/u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk.'
错误日志如下,
/u01/app/oraInventory/product/11.2.0/dbhome_1/lib/libnnz11.so: could not read symbols: Invalid operation
解决方案:在makefile中添加链接libnnz11库的参数
修改$ORACLE_HOME/sysman/lib/ins_emagent.mk,将
$(MK_EMAGENT_NMECTL)
修改为:
$(MK_EMAGENT_NMECTL) -lnnz11
点击Retry继续安装。
安装成功!
====遇到的其他问题====
Error in invoking target 'agent nmhs' of makefile '/home/oracle_11/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk'.
解决过程
vi $ORACLE_HOME/sysman/lib/ins_emagent.mk
Search for the line
$(MK_EMAGENT_NMECTL)
Change it to:
$(MK_EMAGENT_NMECTL) -lnnz11
安装oracle时,如何指定jdk 或者如何解决提示框显示不全
./runInstaller -jreLoc JRE_LOCATION
找到的参数为jreLoc 这样设置后,安装界面的乱码同时也解决了
./runInstaller -jreLoc /usr/local/jdk1.7.0_80/
./runInstaller -jreLoc /usr/local/jdk1.8.0_121/
(先上传jdk,修改相关路径)