修改系统内核参数
# vi /etc/sysctl.conf
kernel.shmall = 2097152 //该参数表示系统一次可以使用的共享内存总量(以页为单位)。缺省值就是2097152,通常不需要修改
kernel.shmmax = 2147483648 //该参数定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2G
kernel.shmmni = 4096 //这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值是4096。通常不需要更改
kernel.sem = 250 32000 100 128 //表示设置的信号量
fs.file-max = 65536 //表示文件句柄的最大数量。文件句柄设置表示在linux系统中可以打开的文件数量
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144 //默认的接收窗口大小
net.core.rmem_max=262144 //接收窗口的最大大小
net.core.wmem_default=262144 //默认的发送窗口大小
net.core.wmem_max=262144 //发送窗口的最大大小
修改好内核参数后,执行如下命令使新的设置生效
# /sbin/sysctl -p
创建Oracle用户、组、安装目录
单主机环境,不考虑RAC环境的配置。
(1)创建Oracle用户组
# groupadd oinstall
# groupadd dba
(2)创建Oracle9i用户
# useradd -m -g oinstall -G dba oracle9i
(3)设置Oracle用户口令
# passwd oracle9i
(4)创建Oracle安装目录以及数据存放目录
# mkdir -p /DBSoftware/app/oracle
# mkdir -p /DBData/oradata
(5)修改目录权限
# chown -R oracle:oinstall /DBSoftware/app/oracle/ /DBData/oradata/
# chmod -R 755 /DBSoftware/app/oracle/ /DBData/oradata/
添加以下内容到/etc/security/limits.conf
# vi /etc/security/limits.conf
Oracle9i soft nproc 2047
Oracle9i hard nproc 16384
Oracle9i soft nofile 1024
Oracle9i hard nofile 65536
添加以下内容到/etc/pam.d/login
# vi /etc/pam.d/login
session required /lib/security/pam_limits.so
session required pam_limits.so
添加以下内容到/etc/profile
# vi /etc/profile
if [ $USER = "oracle9i" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
配置oracle用户环境变量
$ vi ~/.bash_profile
增加如下内容:
export ORACLE_BASE=/DBSoftware/app/oracle //上面创建的Oracle安装文件夹
export ORACLE_SID=orcl
export ORACLE_HOME=$ORACLE_BASE/product/9.2.0
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBARY_PATH=$ORACLE_HOME/lib
export PATH
umask 022
安装p3006854_9204补丁。
否则在安装数据库时会报“
loading shared libraries: libstdc++-libc6.1-1.so.2:
cannot open shared object file: No such file or directory”的错误。
安装Oracle9i(9.2.0.4)数据库软件,选择仅安装软件,不建库。
升级到9.2.0.8。
安装compat-oracle-rhel4-1.0-5.i386.rpm包及相关包:# rpm -ivh compat-libcwait-2.1-1.i386.rpm
# rpm -ivh libXp-devel-1.0.0-8.1.el5.i386.rpm
# rpm -ivh libaio-devel-0.3.106-3.2.i386.rpm
# rpm -ivh compat-db-4.2.52-5.1.i386.rpm
# rpm -ivh openmotif21-2.1.30-11.RHEL4.6.i386.rpm
# rpm -ivh compat-gcc-32-3.2.3-47.3.i386.rpm
# rpm -ivh compat-gcc-32-c++-3.2.3-47.3.i386.rpm
# rpm -ivh compat-oracle-rhel4-1.0-5.i386.rpm
其中:libXp-devel-1.0.0-8.1.el5.i386.rpm、libaio-devel-0.3.106-3.2.i386.rpm、compat-db-4.2.52-5.1.i386.rpm三个是系统自带的。
创建监听以及创建数据库使用Oracle提供的NET CONFIGURATION ASSISTANT创建TNS监听
$ netca
基本上就是一直Next就可以了,当然你也可以在这期间修改TNS的监听端口号
TNS监听创建完成后可以使用如下命令进行检查:
# netstat -atln检查监听端口是否打开
$ lsnrctl status检查TNS监听状态
确认监听已经成功启动后,即可执行Database Configure Assistant进行数据库的创建,执行命令如下:
$ dbca
在创建数据库的过程中,建议将数据库的字符集设置为ZHS16GBK,防止出现乱码。
用户密码设置为“system”
安装完成后,将/etc/redhat-release文件中的内容修改回Red Hat Enterprise Linux Server release 5 (Tikanga)
SQL> select * from v$version;
BANNER
----------------------------------------------------------------
Oracle9i Enterprise Edition Release 9.2.0.8.0 - Production
PL/SQL Release 9.2.0.8.0 - Production
CORE9.2.0.8.0Production
TNS for Linux: Version 9.2.0.8.0 - Production
NLSRTL Version 9.2.0.8.0 - Production