CentOS 6.0 (x86_x64)安装oracle 11g R2
曾经在几个月前写了一篇《RHEL 6 (x86_x64)安装oracle 11g r2》的文章。有朋友反映说安装不了,也有朋友说应该再讲得详细点。这几天有点空,加上CentOS 6.0也发布了,然后用U盘全新安装其liveCD,这回我还是选择64位版本,因为这样可以使用KVM虚拟化功能。把系统内核更新至2.6.32-71.29.1。本文同样适用于RHEL 6.0。
我的分区方案: swap 2GB /boot 200M / 25G /home 20G
这是懒人分区法。不建议这样分区,我因为磁盘不够才这样分的,至少应划出一个/opt来安装Oracle 11g,不然如果根分区不够的话系统死掉就不好了。提供一个方案(如果你的磁盘足够大):
swap 4G(可以是内存的1.5-2倍) /boot 200M /usr 10G
/ 10G(其实5G就很够了) /var 5G
/opt 20G /home
至于用于生产环境的话要/opt要大或者将数据分到另一个区。
安装程序所需的依赖包:
yum install libaio mksh unixODBC unixODBC-devel libstdc++ libstdc++-devel libgcc
下面的安装过程分为两步,一是修改系统参数,二是软件及数据库安装。
(1)vi /etc/sysctl.conf, 在末尾添加如下参数:
fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 1073741824 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
保存并使之生效: /sbin/sysctl -p
如果有如下提示错误,忽略,因为即使未修改参数也提示有这个错误 error: \error: \error: \注意: kernel.shmmax's 的值是物理内存的一半。 我的是2G内存,所以是1073741824
(2)对oracle帐号进行资源限制。vi /etc/security/limits.conf,添加: oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536
(3) vi /etc/pam.d/login,登录认证配置pam模块。添加参数: session required pam_limits.so
(4) 为oracle用户在bash和ksh中设定资源限制编辑文件 /etc/profile。添加至末尾。vi /etc/profile:
if [ $USER = \if [ $SHELL = %ulimit -p 16384 ulimit -n 65536 else
ulimit -u 16384 -n 65536 fi fi
(5)C shell 登录配置。 vi /etc/csh.login,添加: if( $USER == \limit maxproc 16384 limit descriptors 65536 umask 022 endif
(6)因为RHEL 6.0未经认证,所以修改为如下值,成功安装数据库后在修改回来。但这一步并非是必须的,但为了 避免安装中途出现问题,还是改好了。 vi /etc/redhat-release:
Red Hat Enterprise Linux Server release 5.0 (Tikanga)
(7)添加相关用户及用户组: /usr/sbin/groupadd oinstall /usr/sbin/groupadd dba
/usr/sbin/useradd -m -g oinstall -G dba oracle
echo \(我比较懒,管道命令修改oracle密码)
(8) 创建安装路径及修改权限: mkdir -p /opt/11g/oracle
chown -R oracle:oinstall /opt/11g/oracle chmod -R 775 /opt/11g/oracle mkdir -p /opt/11g/oraInventory
chown -R oracle:oinstall /opt/11g/oraInventory chmod -R 775 /opt/11g/oraInventory (9) vi /home/oracle/.bash_profile, 其中ORACLE_SID的值可以自己定,我的设为orcl。
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_BASE=/opt/11g/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1; export ORACLE_HOME ORACLE_SID=orcl; export ORACLE_SID ORACLE_TERM=xterm; export ORACLE_TERM
PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH; export PATH LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
if [ $USER = \if [ $SHELL = %ulimit -p 16384 ulimit -n 65536 else
ulimit -u 16384 -n 65536 fi fi
umask 022
使环境变量生效:
source ~/.bash_profile
(9)切换到oracle解压11G的安装包,这样就不用再修改权限了。重启后以oracle登录开始安装。
(10)为避免错误,关闭防火墙: service iptables stop
登录oracle(建议选择英语语言登录,防止安装时界面中文空格乱码)安装开始:
./ runInstaller 安装截图:
图1 启动安装
图2 选择安装方式,可以选择安装程序后再使用DBCA定制创建数据库。