inux下靜默安裝,升級和刪除Oracle客戶端

jolly10發表於2009-06-30
有的時候不方便登陸Linux的圖形介面安裝oracle客戶端,我們完全可以採用靜默模式安裝,升級和刪除oracle客戶端(代替OUI)。

平臺:RHEL4.5,oracle10.2.0.1
[@more@]

一、靜默方式安裝oracle客戶端

1、上傳oracle軟體,假如放在/orahome/soft/目錄下
a
# mkdir -p /orahome/soft/
# cd /orahome/soft/
# rz (SecureCRT裡透過rz命令上傳oracle10g安裝檔案10201_client_linux32.zip)

2、設定安裝oracle軟體必須的作業系統資訊,如組、使用者、目錄、使用者初始化引數等

--增加組和使用者
# groupadd oinstall
# useradd -g oinstall oracle
# passwd oracle

--建立ORACLE_BASE目錄
# mkdir -p /u01/app/oracle
# chown -R oracle:oinstall /u01/app/oracle
# chmod -R 775 /u01/app/oracle

--oracle使用者的.bash_profile檔案設定
# su - oracle
$ vi ~/.bash_profile
umask 022
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/10.2.0/client_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LC_ALL="en_US"
export LANG="en_US"
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK" #SIMPLIFIED CHINESE_CHINA.ZHS16GBK
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
$ . ~/.bash_profile

3、建立oraInst.loc檔案

$ su -
# vi /etc/oraInst.loc (加入或修改以下內容,其中/u01/app/oracle是ORACLE_BASE)
inventory_loc=/u01/app/oracle/oraInventory
inst_group=oinstall
# chmod 664 /etc/oraInst.loc
# exit

4、解壓oracle安裝檔案(在解壓後oracle軟體的response目錄裡有各種響應檔案的模版)

$ cd /orahome/soft
$ unzip 10201_client_linux32.zip

5、透過response檔案開始安裝

其實我更加喜歡直接在response檔案中修改好引數,當然不修改也可以,可直接用下面的方法:

$ cd /orahome/soft/client
$ ./runInstaller -silent -noconfig -responseFile /orahome/soft/client/response/
clientcustom.rsp UNIX_GROUP_NAME="oinstall" ORACLE_HOME="/u01/app/oracle/product/10.2.0/client_1" ORACLE_HOME_NAME="OraClient10g_home1"
其中:
-silent 表示以靜默方式安裝,不會有任何提示
-noconfig 表示不執行配置助手netca
-responseFile 表示使用哪個響應檔案,clientadmin.rsp是管理型專用含OEM,clientruntime.rsp是執行時專用不含OEM,instantClient.rsp是快速客戶端專用不含bin目錄
(以下引數也可以事先編輯在響應檔案 clientadmin.rsp 裡,那安裝時則無需帶這些引數)
UNIX_GROUP_NAME="oinstall" oracle使用者用於安裝軟體的組名
ORACLE_HOME="/u01/app/oracle/product/10.2.0/db_1" oracle安裝目錄
ORACLE_HOME_NAME="OraDb10g_home1" ORACLE_HOME名

安裝結束後,以root使用者執行$ORACLE_HOME下的root.sh(如果客戶端型別是instantClient則不用):
$ su -
# /u01/app/oracle/product/10.2.0/client_1/root.sh
# exit
$ sqlplus /nolog (檢查是否可用)

7、附註

執行以下命令靜默解除安裝Oracle客戶端軟體:
$ cd /orahome/soft/client
$ ./runInstaller -silent -deinstall -removeallfiles -removeAllPatches REMOVE_HOMES="{/u01/app/oracle/product/10.2.0/client_1}" -responseFile /orahome/soft/client/response/clientruntime.rsp

二、靜默方式升級客戶端到10.2.0.4(Patch Set 3)

開始打軟體的patch, 客戶端使用的patch set和資料庫一樣.
# cd /orahome/soft/
# rz (SecureCRT裡透過rz命令上傳升級檔案 p6810189_10204_Linux-x86.zip)
$ unzip p6810189_10204_Linux-x86.zip (解壓補丁包)
$ cd /orahome/soft/Disk1
$ ./runInstaller -silent -responseFile /orahome/soft/Disk1/response/patchset.rsp UNIX_GROUP_NAME="oinstall" ORACLE_HOME="/u01/app/oracle/product/10.2.0/client_1" ORACLE_HOME_NAME="OraClient10g_home1" FROM_LOCATION="/orahome/soft/Disk1/stage/products.xml"
$ sqlplus /nolog (檢查是否成功)
SQL*Plus: Release 10.2.0.4.0 - Production on Fri Dec 5 18:08:40 2008
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
SQL>

三、手工刪oracle客戶端軟體

1、刪除oraInventory目錄,目錄位置記錄在oraInst.loc檔案中

$ more /etc/oraInst.loc
inventory_loc=/u01/app/oracle/oraInventory
inst_group=oinstall
$ rm -rf /u01/app/oracle/oraInventory

2、刪除$ORACLE_HOME目錄

$ rm -rf $ORACLE_HOME

3、刪除其它oracle檔案

$ su -
# rm -f /usr/local/bin/oraenv
rm -f /usr/local/bin/coraenv
rm -f /usr/local/bin/dbhome
# rm -f /etc/oraInst.loc
rm -f /etc/oratab

4、將oracle使用者刪除(若要重新安裝,可以不刪除)

# userdel -r oracle

5、將使用者組刪除(若要重新安裝,可以不刪除)

# groupdel oinstall

10g客戶端silent方式的安裝也可參考,他提到了一種叫Instant Client的安裝方式,我沒有試過。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/271283/viewspace-1023636/,如需轉載,請註明出處,否則將追究法律責任。

相關文章