Oracle 11.2.0.1 for RHEL5-6 x86和x64靜默安裝詳解
Oracle 11.2.0.1 for RHEL5 RHEL6 Server(包括x86和x86_64平臺)的靜默安裝與配置是本文我們主要要介紹的內(nèi)容,接下來我們就介紹這一過程。過程中的所有操作無需使用圖形界面,靜默安裝能減少安裝出錯的可能性,也能大大加快安裝速度。
# 后跟命令表示以操作系統(tǒng)下root用戶操作;
$ 后跟命令表示以操作系統(tǒng)下Oracle用戶操作;
禁用selinux:
- setenforce 0
- vi /etc/sysconfig/seliunx
- SELINUX=disabled
關(guān)閉防火墻:service iptables stop
禁用以下非必要的系統(tǒng)服務(wù):
- chkconfig --level 2345 iptables off
- chkconfig --level 2345 rhnsd off
- chkconfig --level 2345 isdn off
- chkconfig --level 2345 avahi-daemon off
- chkconfig --level 2345 avahi-dnsconfd off
- chkconfig --level 2345 bluetooth off
- chkconfig --level 2345 cpuspeed off
- chkconfig --level 2345 hidd off
- chkconfig --level 2345 ip6tables off
- chkconfig --level 2345 mcstrans off
- chkconfig --level 2345 pcscd off
- chkconfig --level 2345 gpm off
- chkconfig --level 2345 xinetd off
- chkconfig --level 2345 portmap off
- chkconfig --level 2345 yum-updatesd off
- chkconfig --level 2345 restorecond off
- chkconfig --level 2345 setroubleshoot off
- chkconfig --level 2345 yum-updatesd off
- chkconfig --level 2345 libvirtd off
- chkconfig --level 2345 xendomains off
- chkconfig --level 2345 xend off
- chkconfig --level 2345 iptables off
- chkconfig --level 2345 sendmail off
- chkconfig --level 2345 cups off
將/dev/shm的大小增加到總內(nèi)存的100%(要大于給oracle分配的total mem:缺省值:40%),修改/etc/fstab的這行:默認的: none /dev/shm tmpfs defaults 0 0改成: none /dev/shm tmpfs defaults,size=16G 0 0,重新mount /dev/shm使之生效:# mount -o remount /dev/shm,馬上可以用"df -h"命令檢查變化。
Package安裝檢查
- # rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++
- glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++
- libstdc++-devel make sysstat unixODBC unixODBC-devel | grep "not installed"
- libaio-devel sysstat unixODBC unixODBC-devel
幾個rpm包可以在RHEL5.3的安裝光盤里找到。注意:除了sysstat包,其他同樣名字的32位的rpm包在64位系統(tǒng)中也要安裝。
增加數(shù)據(jù)庫組和用戶
# id oracle (確認oracle用戶是否存在,確保oracle原不存在)(建立產(chǎn)品清單管理組) (建立數(shù)據(jù)庫安裝組) (建立ASM管理組) (建立Grid管理組)
- /usr/sbin/groupadd -g 1001 oinstall
- /usr/sbin/groupadd -g 1002 dba
- /usr/sbin/groupadd -g 1003 asmadmin
- /usr/sbin/groupadd -g 1004 asmdba
(oinstall主要組,確保/home/oracle原不存在),配置oracle密碼:georacle
- /usr/sbin/useradd -g oinstall -G dba,asmdba oracle -d /home/oracle
- passwd oracle
- id oracle
- uid=1001(oracle) gid=1001(oinstall) groups=1001(oinstall),1002(dba),1004(asmdba)
調(diào)整OS內(nèi)核參數(shù)
設(shè)置原則:
kernel.shmmax設(shè)為物理內(nèi)存大小(如果系統(tǒng)已設(shè)置了足夠大就無需再設(shè)置了,參考值為最小需求)
- # vi /etc/sysctl.conf
- #------------------------------------------
- kernel.shmall = 2097152
- kernel.shmmax = 536870912
- kernel.shmmni = 4096
- kernel.sem = 250 32000 100 128
- fs.aio-max-nr = 1048576
- fs.file-max = 6815744
- fs.aio-max-nr = 1048576
- net.ipv4.ip_local_port_range = 9000 65500
- net.core.rmem_default = 262144
- net.core.rmem_max = 4194304
- net.core.wmem_default = 262144
- net.core.wmem_max = 1048586
- #------------------------------------------
- # /sbin/sysctl -p (設(shè)置參數(shù)立即生效)
[redhat6]:如果有如下提示錯誤,忽略,因為即使未修改參數(shù)也提示有這個錯誤。
- error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
- error: "net.bridge.bridge-nf-call-iptables" is an unknown key
- error: "net.bridge.bridge-nf-call-arptables" is an unknown key
vi /etc/redhat-release,修改為如下值,成功安裝數(shù)據(jù)庫后在修改回來:
- Red Hat Enterprise Linux Server release 5.0 (Tikanga)
- [redhat6]
增加shell限制
為了提升性能增加oracle用戶的shell限制.
- # vi /etc/security/limits.conf (在文件***增加或修改以下參數(shù))
- oracle soft nproc 2047
- oracle hard nproc 16384
- oracle soft nofile 1024
- oracle hard nofile 65536
- # vi /etc/pam.d/login (在文件***增加或修改以下參數(shù))
- session required pam_limits.so
- # vi /etc/profile (在文件***增加或修改以下腳本)
- if [ $USER = "oracle" ]; then
- if [ $SHELL = "/bin/ksh" ]; then
- ulimit -p 16384
- ulimit -n 65536
- else
- ulimit -u 16384 -n 65536
- fi
- fi
建立必需目錄和文件
- more /etc/oratab (確認原來不存在Oracle主目錄)
- more /etc/oraInst.loc (確認原來不存在Oracle產(chǎn)品清單目錄)
- 建立(Oracle_base目錄)
- mkdir -p /opt/oracle/11.2.0 /home/oracle/inventory/
- chown -R oracle:oinstall /opt/oracle /home/oracle
設(shè)置oracle用戶環(huán)境變量
如果服務(wù)器有多網(wǎng)卡, 注意設(shè)置ORACLE_HOSTNAME為某網(wǎng)卡IP對應(yīng)的主機名, 參照/etc/hosts文件.
- $ vi /home/oracle/.bash_profile
- umask 022
- ORACLE_HOSTNAME=localhost.localdomain
- ORACLE_BASE=/opt/oracle
- ORACLE_HOME=$ORACLE_BASE/11.2.0
- ORACLE_SID=ge01
- PATH=.:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/jdk/bin:$PATH
- LC_ALL="en_US"
- LANG="en_US"
- NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
- NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
- LD_LIBRARY_PATH=$ORACLE_HOME/lib
- NLS_LANG NLS_DATE_FORMAT
- export ORACLE_HOSTNAME ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LC_ALL LANG LD_LIBRARY_PATH NLS_LANG
上傳軟件到/home/oracle/ 解壓Oracle安裝文件
- # cd /home/oracle/
- # unzip linux*_11gR2_database_1of2.zip -d /home/oracle
- # unzip linux*_11gR2_database_2of2.zip -d /home/oracle
- # chown -R oracle:oinstall /opt/oracle /home/oracle
在解壓后oracle軟件的response目錄里有各種響應(yīng)文件的模版.
生成響應(yīng)文件模板。
- $ vi /home/oracle/database/response/db_install.rsp
- #--------------------------------------------------------------------
- # 注意!不要更改以下參數(shù),否則安裝會報錯!
- oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
- DECLINE_SECURITY_UPDATES=true
- #以下參數(shù)根據(jù)實際情況更改,ORACLE_HOSTNAME的值由hostname命令獲得
- ORACLE_HOSTNAME=localhost.localdomain
- INVENTORY_LOCATION=/home/oracle/inventory
- UNIX_GROUP_NAME=oinstall
- SELECTED_LANGUAGES=en,zh_CN
- oracle.install.db.InstallEdition=EE
- oracle.install.db.DBA_GROUP=dba
- oracle.install.db.OPER_GROUP=dba
- #--------------------------------------------------------------------
- 各參數(shù)含義如下:
- -silent 表示以靜默方式安裝,不會有任何提示
- -force 允許安裝到一個非空目錄
- -noconfig 表示不運行配置助手netca
- -responseFile 表示使用哪個響應(yīng)文件,必需使用絕對路徑
- oracle.install.responseFileVersion 響應(yīng)文件模板的版本,該參數(shù)不要更改
- oracle.install.option 安裝選項,本例只安裝oracle軟件,
- DECLINE_SECURITY_UPDATES 是否需要在線安全更新,該參數(shù)不要更改
- ORACLE_HOSTNAME 安裝主機名
- UNIX_GROUP_NAME oracle用戶用于安裝軟件的組名
- INVENTORY_LOCATION oracle產(chǎn)品清單目錄
- SELECTED_LANGUAGES oracle運行語言環(huán)境,一般選en,zh_CN
- ORACLE_HOME Oracle安裝目錄
- ORACLE_BASE oracle基礎(chǔ)目錄
- oracle.install.db.InstallEdition 安裝版本類型,一般是企業(yè)版
- oracle.install.db.isCustomInstall 是否定制安裝,默認Partitioning,OLAP,RAT都選上了
- oracle.install.db.customComponents 定制安裝組件列表:除了以上默認的,可加上Label Security和Database Vault
- oracle.install.db.DBA_GROUP oracle用戶用于授予OSDBA權(quán)限的組名
- oracle.install.db.OPER_GROUP oracle用戶用于授予OSOPER權(quán)限的組名
開始安裝oracle軟件
1) 通過response文件靜默安裝, 大概2-3分鐘:
- $ ./runInstaller -silent -force -noconfig -responseFile /home/oracle/db_install.rsp
- 控制臺直到出現(xiàn)以下提示則表示安裝完成:
- #-------------------------------------------------------------------
- ...
- /opt/oracle/oraInventory/orainstRoot.sh
- /opt/oracle/product/11.2.0/dbhome_1/root.sh
- To execute the configuration scripts:
- 1. Open a terminal window
- 2. Log in as "root"
- 3. Run the scripts
- 4. Return to this window and hit "Enter" key to continue
- Successfully Setup Software.
- #-------------------------------------------------------------------
2) 安裝期間查看安裝日志信息了解安裝進度:
- $ cd $ORACLE_BASE/oraInventory/logs
- $ tail -100f installActions*.log
3) 安裝的軟件信息會寫入inventory.xml文件, 如果需重運行則把該文件的對應(yīng)安裝條目信息刪除即可:$ vi $ORACLE_BASE/oraInventory/ContentsXML/inventory.xml
運行orainstRoot.sh和root.sh
若本機***次安裝oracle軟件, 則執(zhí)行orainstRoot.sh來建立oraInst.loc文件和修改權(quán)限:
- $ su -
- # /opt/oracle/oraInventory/orainstRoot.sh
- # more /etc/oraInst.loc
執(zhí)行$ORACLE_HOME下的root.sh來建立oratab,dbhome,oraenv,coraenv文件, 如果提示則一直回車:
- # /opt/oracle/11.2.0/root.sh
- # more /etc/oratab
靜默配置監(jiān)聽
通過response文件運行netca, 生成sqlnet.ora和listener.ora文件, 位于$ORACLE_HOME/network/admin目錄下:
- # su - oracle
- $ $ORACLE_HOME/bin/netca /silent /responsefile /home/oracle/netca.rsp
- $ ll $ORACLE_HOME/network/admin/*.ora
- $ lsnrctl status
執(zhí)行完后, 監(jiān)聽就已經(jīng)啟動了, 默認端口是1521, 默認是動態(tài)監(jiān)聽, 只要實例啟動了就會監(jiān)聽到。
靜默建庫
1) 生成響應(yīng)文件模板:$ vi /home/oracle/dbca.rsp
#以下參數(shù)不要更改
- [GENERAL]
- RESPONSEFILE_VERSION = "11.2.0"
- OPERATION_TYPE = "createDatabase"
- [CREATEDATABASE]
- TEMPLATENAME = "General_Purpose.dbc"
#以下參數(shù)必須設(shè)置
- [CREATEDATABASE]
- GDBNAME = "ge01"
- SID = "ge01"
- SYSPASSWORD = "georacle"
- SYSTEMPASSWORD = "georacle"
- EMCONFIGURATION = "LOCAL"
- DBSNMPPASSWORD = "georacle"
- CHARACTERSET = " ZHS16GBK"
- MEMORYPERCENTAGE = "40"
安裝數(shù)據(jù)庫的命令:dbca -silent -responseFile /home/oracle/dbca.rsp
修改其他配置文件:vi /etc/oratab 修改文件中第三列N為Y
修改$ORACLE_HOME/bin/dbstart文件中ORACLE_HOME_LITENER=${ORACLE_HOME}
(同樣,也需要修改 dbshut )后,可以手動運行dbstart文件,來測試是否可以正確啟動oracle11g
首先以root身份在/etc/init.d/目錄下創(chuàng)建Oracle11g的服務(wù)文件。vi /etc/init.d/oracle11g,然后修改這個文件內(nèi)容如下:
- # !/bin/bash
- # chkconfig: 345 51 49
- # description: starts the oracle dabase deamons
- #
- ORACLE_HOME=/opt/oracle/11.2.0
- ORACLE_OWNER=oracle
- ORACLE_DESC="Oracle 11g"
- ORACLE_LOCK=/opt/oracle/oracle.lock
- case "$1" in
- 'start')
- echo -n \"Starting ${ORACLE_DESC}:\"
- runuser - $ORACLE_OWNER -c '$ORACLE_HOME/bin/dbstart'
- touch ${ORACLE_LOCK}
- echo
- ;;
- 'stop')
- echo -n "shutting down ${ORACLE_DESC}: "
- runuser - $ORACLE_OWNER -c '$ORACLE_HOME/bin/dbshut'
- rm -f ${ORACLE_LOCK}
- echo
- ;;
- 'restart')
- echo -n "restarting ${ORACLE_DESC}:"
- $0 stop
- $0 start
- echo
- ;;
- *)
- echo "usage: $0 { start | stop | restart }"
- exit 1
- esac
- exit 0
- chmod 744 /etc/init.d/oracle11g
配置自動啟動oracle服務(wù):chkconfig --level 35 oracle11g on
按照平臺使用要求設(shè)置oracle:$sqlplus / as sysdba
將密碼有效期由默認的180天修改成“無限制”:增加users表空間文件,調(diào)整參數(shù)。
- ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
- alter database add logfile '/opt/oracle/oradata/ge01/redo04.log' size 150M;
- alter database add logfile '/opt/oracle/oradata/ge01/redo05.log' size 150M;
- alter database add logfile '/opt/oracle/oradata/ge01/redo06.log' size 150M;
- alter tablespace users add datafile '/opt/oracle/oradata/ge01/users02.dbf' size 100M autoextend on next 10M;
- alter tablespace users add datafile '/opt/oracle/oradata/ge01/users03.dbf' size 100M autoextend on next 10M;
- alter system set open_cursors = 500 scope=spfile;
- alter system set processes=350 scope=spfile;
- alter system set sessions=350 scope=spfile;
重啟oracle生效
- shutdown immediate
- startup
以上就是Oracle 11.2.0.1 for RHEL5-6 x86和x64靜默安裝的全部過程,希望本次的介紹能夠?qū)δ兴斋@!
【編輯推薦】






