OS: Red Hat AS5
DB: Oracle 11gR1
1.安装前OS检查和配置
1.1 最低硬件需求
A.最低内存1Gb
[root@DN2WEB04 ~]# grep MemTotal /proc/meminfo
MemTotal: 1940480 kB
B.交换内存空间(建议RAM和Swap space满足如下比例值)
内存: 1 ~ 2 GB 2 ~ 8 GB >8GB
交换内存空间: 1.5X 1X 0.75X
[root@DN2WEB04 ~]# grep SwapTotal /proc/meminfo
SwapTotal: 2031608 kB
C.共享内存(shared memory (/dev/shm))和文件描述符(file descriptors)
如果使用自动内存管理,MEMORY_MAX_TARGET 和 MEMORY_TARGET参数值必须小于可用共享内存;文件描述符至少为512*PROCESSES
[root@DN2WEB04 ~]# df -h /dev/shm
Filesystem Size Used Avail Use% Mounted on
tmpfs 948M 569M 380M 60% /dev/shm
D.磁盘空间需求
可用/tmp磁盘空间>400MB
[root@DN2WEB04 ~]# df -h /tmp
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
71G 56G 11G 85% /
根据软件安装类型,磁盘需求空间如下:
Enterprise Edition 3.47GB
Standard Edition 3.22GB
Custom (maximum) 3.45GB
1.2 软件需求
binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3
compat-libstdc++-33-3.2.3 (32 bit)
elfutils-libelf-0.125
elfutils-libelf-devel-0.125
gcc-4.1.1
gcc-c++-4.1.1
glibc-2.5-12
glibc-2.5-12 (32 bit)
glibc-common-2.5
glibc-devel-2.5
glibc-devel-2.5-12 (32 bit)
libaio-0.3.106
libaio-0.3.106 (32 bit)
libaio-devel-0.3.106
libgcc-4.1.1
libgcc-4.1.1 (32 bit)
libstdc++-4.1.1
libstdc++-4.1.1 (32 bit)
libstdc++-devel 4.1.1
make-3.81
sysstat-7.0.0
通过下面命令来检查上述软件及版本,例如:
[root@DN2WEB04 ~]# rpm -q binutils
binutils-2.17.50.0.6-5.el5
1.3 检查网络设置
检查hosts文件是否包含了主机名
[root@DN2WEB04 ~]# more /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
::1 localhost6.localdomain6 localhost6
127.0.0.1 localhost.localdomain localhost DN2WEB04
10.10.1.20 DN2WEB04.sae.com.hk DN2WEB04
1.4 创建系统组和用户
[root@DN2WEB04 ~]# groupadd oinstall
[root@DN2WEB04 ~]# groupadd dba
[root@DN2WEB04 ~]# useradd -g oinstall -G dba oracle
[root@DN2WEB04 ~]# passwd oracle
1.5 配置用户oracle的Shell Limits
A.修改/etc/profile文件
先备份/etc/profile文件
[root@DN2WEB04 ~]# cp /etc/profile /etc/profile.bak
再在/etc/profile文件中加入如下内容:
[root@DN2WEB04 ~]# vi /etc/profile
umask 022
if [ "$USER" = "oracle" ];then
if [ "$SHELL" = "/bin/ksh" ];then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
B.修改/etc/security/limits.conf文件
[root@DN2WEB04 ~]# cp /etc/security/limits.conf /etc/security/limits.conf.bak
[root@DN2WEB04 ~]# vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
C.修改/etc/pam.d/login文件
[root@DN2WEB04 ~]# cp /etc/pam.d/login /etc/pam.d/login.bak
[root@DN2WEB04 ~]# vi /etc/pam.d/login
session required pam_limits.so
1.6 配置内核参数
内核参数应满足下面最小值
semmsl 250
semmns 32000
semopm 100
semmni 128
shmall 2097152
shmmax 4294967295
shmmni 4096
file-max 512 * PROCESSES
ip_local_port_range Minimum:1024 Maximum: 65000
rmem_default 262144
rmem_max 4194304
wmem_default 262144
wmem_max 262144
aio-max-nr Maximum: 1048576
查看方法:
[root@DN2WEB04 ~]# /sbin/sysctl -a | grep sem
[root@DN2WEB04 ~]# /sbin/sysctl -a | grep shm
[root@DN2WEB04 ~]# /sbin/sysctl -a | grep file-max
[root@DN2WEB04 ~]# /sbin/sysctl -a | grep ip_local_port_range
[root@DN2WEB04 ~]# /sbin/sysctl -a | grep rmem_default
[root@DN2WEB04 ~]# /sbin/sysctl -a | grep rmem_max
[root@DN2WEB04 ~]# /sbin/sysctl -a | grep wmem_default
[root@DN2WEB04 ~]# /sbin/sysctl -a | grep wmem_max
如果不能满足最低要求,则修改/etc/sysctl.conf文件,如:
[root@DN2WEB04 ~]# cp /etc/sysctl.conf /etc/sysctl.conf.bak
[root@DN2WEB04 ~]# vi /etc/sysctl.conf
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
net.ipv4.tcp_wmem = 262144 262144 262144
net.ipv4.tcp_rmem = 4194304 4194304 4194304
fs.file-max = 6553600
[root@DN2WEB04 ~]# /sbin/sysctl -p
1.7 创建目录(根据/mount_point/app/oracle_sw_owner)
[root@DN2WEB04 ~]# mkdir -p /u01/app/oracle
[root@DN2WEB04 ~]# chown -R oracle:oinstall /u01/app/oracle
[root@DN2WEB04 ~]# chmod -R 775 /u01/app/oracle
1.8 配置oracle用户环境变量
[oracle@DN2WEB04 ~]$ export ORACLE_BASE=/u01/app/oracle
[oracle@DN2WEB04 ~]$ export ORACLE_SID=DEMO11G
2 运行runInstaller进行安装
[oracle@DN2WEB04 ~]$ cd /root/software/11gforLinuxX86/database/
[oracle@DN2WEB04 database]$ ./runInstaller