28.2.3 安裝前的配置
在安裝Oracle 11g前,需要手工更改系統的內核參數以及創建oracle用戶和用戶組,具體操作步驟如下所述。
(1)創建oracle用戶和oinstall、dba用戶組,命令如下所示。
# /usr/sbin/groupadd oinstall //創建用戶組oinstall
# /usr/sbin/groupadd dba //創建用戶組dba
# /usr/sbin/useradd -m -g oinstall -G dba oracle //創建用戶oracle
# id oracle //查看用戶oracle的屬性
uid=512(oracle) gid=1005(oinstall) groups=1005(oinstall),1006(dba) cont-
ext=user_u:system_r:unconfined_t
(2)設置oracle用戶的口令,命令如下所示。
# passwd oracle //設置oracle用戶的口令
Changing password for user oracle.
New UNIX password:
BAD PASSWORD: it is too simplistic/systematic
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
//口令更改成功
(3)創建Oracle的安裝目錄。
# mkdir -p /u01/app/oracle //創建/u01/app/oracle目錄
# chown -R oracle:oinstall /u01/app //更改目錄的所有者和屬組
# chmod -R 775 /u01/app //更改目錄的權限
(4)更改系統的核心參數,以滿足Oracle 11g的安裝要求。
# cat >> /etc/sysctl.conf <<EOF //修改/etc/sysctl.conf文件中的核心參數
> kernel.shmmni = 4096 //設置kernel.shmmni參數值爲4096
> kernel.sem = 250 32000 100 128 //設置kernel.sem參數值爲250 32000 100 128
> fs.file-max = 65536 //設置fs.file-max參數值爲65536
net.ipv4.ip_local_port_range = 1024 65000//設置net.ipv4.ip_local_port_
range參數值爲1024 65000
> net.core.rmem_default=4194304 //設置net.core.rmem_default參數值爲4194
304
> net.core.wmem_default=262144 //設置net.core.wmem_default參數值爲262144
> net.core.rmem_max=4194304 //設置net.core.rmem_max參數值爲4194304
> net.core.wmem_max=262144 //設置net.core.wmem_max參數值爲262144
> EOF
# /sbin/sysctl –p //使更改後的內核參數生效
net.ipv4.ip_forward = 0 //該命令會同時輸出更改後的內核參數的值
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
…省略部分輸出…
%注意:上述的內核參數值只是Oracle 11g數據庫的最小要求,用戶可以根據實際情況把參數值增大,執行以下命令可查看上述內核參數的當前值。
/sbin/sysctl -a | grep shm
/sbin/sysctl -a | grep sem
/sbin/sysctl -a | grep file-max
/sbin/sysctl -a | grep ip_local_port_range
/sbin/sysctl -a | grep rmem_default
/sbin/sysctl -a | grep rmem_max
/sbin/sysctl -a | grep wmem_default
/sbin/sysctl -a | grep wmem_max
(5)爲oracle用戶設置可使用的文件和進程數限制。
# cat >> /etc/security/limits.conf <<EOF
//更改/etc/security/limits.conf文件
> oracle soft nproc 2047 //設置oracle用戶的進程數限制
> oracle hard nproc 16384
> oracle soft nofile 1024 //設置oracle用戶的文件數限制
> oracle hard nofile 65536
> EOF
# cat >> /etc/pam.d/login <<EOF //更改/etc/pam.d/login文件
> session required /lib/security/pam_limits.so
> EOF
(6)更改bash、ksh及cshell的默認profile文件的內容。
# cat >> /etc/profile <<EOF
> if [ /$USER = "oracle" ]; then
> if [ /$SHELL = "/bin/ksh" ]; //如果當前SHELL爲ksh
> then
> ulimit -p 16384 //更改進程數限制爲16384
> ulimit -n 65536 //更改文件數限制爲65536
> else //否則執行以下代碼
> ulimit -u 16384 -n 65536
> fi
> umask 022 //設置umask的值
> fi
> EOF
# cat >> /etc/csh.login <<EOF //cshell的配置
> if ( /$USER == "oracle" ) then
> limit maxproc 16384 //更改進程數限制爲16384
> limit descriptors 65536 //更改文件數限制爲65536
> umask 022 //設置umask的值
> endif
> EOF
把上述內容加入到/etc/profile後,用戶每次登錄都會自動執行上述代碼。
(7)允許所有客戶端連接X服務器。
# xhost +