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

工作中碰到的需求,網上看到下面的這篇帖子。

 

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

平臺:RHEL4.5,oracle10.2.0.1

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

1、上傳oracle軟件,假如放在/orahome/soft/目錄下

# 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文件開始安裝

$ cd /orahome/soft/client
$ ./runInstaller -silent -noconfig -responseFile /orahome/soft/client/response/clientruntime.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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章