在RedHat Linux 上安装Oracle 10g数据库的过程如下:
安装Oracle所需的RPM包
查看缺少那些包:#rpm -q gcc make binutils openmotif
缺少的包可以到RedHat Enterprice Linux 5.4安装程序里面找到。
*注意:一些包可能存在依赖关系,这时就要耐心地找出依赖包,一个个地安装
配置系统参数
找到文件/etc/sysctl.conf 在文件的末尾添加如下内容:
kernel.shmall = 2097152 # 可以使用的共享内存的总量。
kernel.shmmax = 2147483648 # 最大共享内存段大小。
kernel.shmmni = 4096 # 整个系统共享内存段的最大数目。
kernel.sem = 250 32000 100 128 # 每个信号对象集的最大信号对象数;系统范围内最大信号对象数;每个信号对象支持的最大操作数;系统范围内最大信号对象集数。
fs.file-max = 65536 # 系统中所允许的文件句柄最大数目。
net.ipv4.ip_local_port_range = 1024 65000 # 应用程序可使用的IPv4端口范围。
net.core.rmem_default = 1048576 # 套接字接收缓冲区大小的缺省值
net.core.rmem_max = 1048576 # 套接字接收缓冲区大小的最大值
net.core.wmem_default = 262144 # 套接字发送缓冲区大小的缺省值
net.core.wmem_max = 262144 # 套接字发送缓冲区大小的最大值
运行以下命令使得内核参数生效:
#/sbin/sysctl -p
修改limits.conf文件参数 (/etc/security/limits.conf)
在文件末尾s添加如下内容:
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
修改login文件(/etc/pam.d/login)
在文件末尾加上如下内容:
session required /lib/security/pam_limits.so
关闭selinux(/etc/selinux/config)
把secure linux设成无效:
SELINUX=disabled
修改hosts文件(/etc/hosts)
加上如下内容:(可参考127.0.0.1那条配置)
你的ip地址 主机名 localhost (例如:192.168.1.2 computer localhost)
(删除127.0.0.1那条,*注意删掉后,会衍生一个问题,就是xstart连不上,需要用到xstart时可以手动加回去就行了)
修改系统版本(/etc/redhat-release)
将RedHat Enterprise Linux Server release 5.4 (Tikanga) 中5.4 该为4(安装成功后再改为5.4)
新增组和用户
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
创建安装目录并授权给oracle用户
mkdir -p /u01/app/oracle/product/10.2.0/db_1
chown -R oracle.oinstall /u01
修改.bash_profile文件 (这个文件是在你创建的oracle用户的根目录下)
在文件末尾加入如下内容:
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=$PATH:$ORACLE_HOME/bin; export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JREORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi