三、配置操作:
既然省却了前面那么一大堆烦人的预安装操作,那么下面就来进行一些实质的操作,从这里起,算是正式进入了Oracle9i的安装过程。
1.设置内核参数,调节信号灯及共享内存:
Oracle9i使用Linux的共享内存、交换区等资源进行,如果系统的的内核参数设置不能满足Oracle的需求,那么在安装或使用过程就会出现各种问题,因此建议配置或修改这些系统内核的参数。
打开/etc/sysctl.conf 文件,将下列数据写入到sysctl.conf的末尾并保存:
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
其中,kernel.shmmax是共享内存段最大尺寸,kernel.shmmni是共享内存段最小尺寸。进入目录/proc/sys/kernel,可分别用命令:
#cat shmmax
#cat shmmni
#cat shmall
查看 kernel.shmmax 、kernel.shmmni、kernel.shmall的数值。
我在一篇文章看到kernel.shmmax的计算为:
kernel.shmmax = 1024*1024*RAM(M)/2 (至少)。
用命令:
#cat sem
可以查看kernel.sem的数值。其中, 250 是参数SEMMSL的值,32000是参数SEMMNS的值, 100是参数SEMOPM的值,而128则是参数SEMMNI的值。
接下来,打开/etc/security/limits.conf文件,将下列数据添加到 limits.conf的末尾并保存:
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
这是设置Oracle对文件的要求。
当对/etc/sysctl.conf 文件和/etc/security/limits.conf文件修改并保存完毕后,请重新启动(reboot)redhat Linux9系统,这样设置的这些参数才能生效。
如果此时进入到/proc/sys/kernel路径,用上述的命令再次查看,就会看到设置的参数已经生效。
2.创建Oracle用户帐号和安装目录
如有以前安装过Oracle 8i for Linux的,应该知道在安装Oracle之前须先在Linux操作系统下新增一个名为oracle的用户,以及一个oracle DBA所专用的群组。Oracle在安装和使用中需要用特定用户(非root用户),按照Oracle的标准说明是需要添加三个专门用户和用户组。为了简单方便安装,我们建立两个组,一个负责安装,另一个负责管理,并把Oracle的安装和使用归到一个特定用户来完成。
以root用户登录,进行如下操作,建立两个组(dba组与oinstall组)和一个Oracle用户,操作命令如下:
#groupadd dba
#groupadd oinstall
#useradd –g oinstall –G dba oracle
#passwd oracle
设置oracle的密码。
Oracle安装的位置应遵守OFA( Optimal Flexible Architecture )规范。Oracle9i的典型安装需要至少两个安装点:一个安装基本的运序,一个为存放数据库,并要确保oracle用户对这两个目录具有可写的权限。
运行下面的命令,创建Oracle的安装点(mount point):
#mkdir /opt/oracle9i
#mkdir /opt/oracle9i/product
#mkdir /opt/oracle9i/product/9.2.0
#chown –R oracle.oinstall /opt/oracle9i
#mkdir /var/opt/oracle9i
#chown oracle.dba /var/opt/oracle9i
#chmod 755 /var/opt/oracle9i
3.设置环境变量
以oracle用户身份登录,打开编辑/home/oracle/.bash_profile文件,在文件末尾添加如下数据行并保存:
export LD_ASSUME_KERNEL=2.4.1
export ORACLE_BASE=/opt/oracle9i
export ORACLE_HOME=/opt/oracle9i/product/9.2.0
export ORACLE_SID= ORCL (数据库SID,可以修改,建议字母要大写)
export ORACLE_TERM=xterm
export TNS_ADMIN= $ORACLE_HOME/network/admin
export LANG=en_US
export ORA_NLS33= $ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH= $ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH= $LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
export PATH= $PATH: $ORACLE_HOME/bin
CLASSPATH= $ORACLE_HOME/JRE: $ORACLE_HOME/jlib: $ORACLE_HOME/rdbms/jlib
CLASSPATH= $CLASSPATH: $ORACLE_HOME/network/jlib
export CLASSPATH
#export DISPLAY=hostIP:0.0
这样oracle用户每次登录时都带有这些环境变量。
其中:ORACLE_HOME为系统软件的安装目录,ORACLE_SID 为数据库的SID,这里可以自行设置。
最后一句“export DISPLAY=hostIP:0.0”,在网上一些介绍安装Oracle的文章中提到过,我曾尝试加上它,但是以oracle身份登录的时候,会出现hostIP的错误提示,并且无法正常登录,我查了一些资料也没有解决(我对Linux知之有限,如果您知道原因所在请您告诉我:jrq@educast.com.cn,谢谢),所以在环境变量中将其注释掉了,所幸的是这并不影响Oracle9i的安装。
友情提示^_^:此处的环境变量的配置工作尤其重要。很多在Linux下安装Oracle失败的原因都是因为环境变量没有配置正确,环境变量的配置直接影响到下面Oracle9i的安装和配置。所以提醒您在设置环境变量的时候多留神。
编辑并保存/home/oracle/.bash_profile文件后,建议先注销退出oracle用户,然后再以oracle用户身份重新登录,这样可以一下配置的环境变量是否出错(例如在上面提到的hostIP的错误)。
接下来就可以进行Oracle9.2.0 for Linux 的安装工作了。