【relink】在LINUX/UNIX平臺上relink Oracle軟體

secooler發表於2010-12-28
當作業系統升級後、作業系統打完補丁後、安裝完oracle補丁之後和relink過程中出現問題時,都會用到relink方法來保證Oracle軟體的正常使用。
本文介紹一下relink方法的使用。
   
1.以oracle使用者登入作業系統
[root@secdb ~]# su - oracle
ora11g@secdb /home/oracle$

2.確定$ORACLE_HOME環境變數設定正確
ora11g@secdb /home/oracle$ echo $ORACLE_HOME
/oracle/ora11gR2/product/11.2.0/dbhome_1

3.確定作業系統的環境變數設定正確
主要涉及一下幾個引數:LIBPATH、LD_LIBRARY_PATH和SHLIB_PATH
以我的環境中LD_LIBRARY_PATH環境變數設定為例:
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib64:/usr/lib64:/usr/local/lib64:/usr/X11R6/lib64/

這裡需要注意的是:“$ORACLE_HOME/lib”內容要放在最前面,使其能夠最先被檢索到。

4.使用env命令驗證作業系統環境變數是否設定正確

5.確定umask為022
ora11g@secdb /home/oracle$ umask
0022

如果返回的不是022可以使用下面的方法來調整。
ora11g@secdb /home/oracle$ umask 022
ora11g@secdb /home/oracle$ umask
0022

6.執行relink命令
1)停止監聽和資料庫例項
ora11g@secdb /home/oracle$ lsnrctl stop

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 28-DEC-2010 20:30:09

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
The command completed successfully

停止資料庫例項。
sys@ora11g> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.

2)執行relink命令
本文以11gR2版本為例進行演示。
在11g這個版本中在relink過程中將不在螢幕上不斷的輸出relink的結果,取而代之的是將所有的輸出內容都自動重定向到了relink.log日誌中。如果是自其它版本中完成relink,建議將這些輸出的資訊都手工的重定向到一個檔案中,方便對繁雜的內容進行檢查。
ora11g@secdb /home/oracle$ relink all
writing relink log to: /oracle/ora11gR2/product/11.2.0/dbhome_1/install/relink.log

對relink都做了些什麼的朋友可以仔細看一下這個輸出日誌內的資訊。

7.小結
可以說使用relink的場景不是很多。除了遇到本文開始處提到的場景時需要使用relink外,如果遇到個別或大量可執行程式無法正常使用時也可以考慮使用relink重新初始化Oracle軟體。

Good luck.

secooler
10.12.28

-- The End --

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

相關文章