ORACLE11g DataGuard手工建立錯誤的解決方案(一)

hunterjoy發表於2015-05-17
執行環境:redhat5.4+oracle11.2.0.3
主庫:ndb1
備庫: standby1

1、使用RMAN進入時報錯,備庫的網路服務名STANDBY1的狀態為BLOCKED
[oracle@lfy1 admin]$ rman target / auxiliary sys/oracle@STANDBY1


Recovery Manager: Release 11.2.0.3.0 - Production on Sun Mar 1 08:28:00 2015


Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.


connected to target database: ndb1 (DBID=2082231315)
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00554: initialization of internal recovery manager package failed
RMAN-04006: error from auxiliary database: ORA-12154: TNS:could not resolve the connect identifier specified
原因:查詢了一下METALINK,發現這個問題從9i到11g,任何一個版本都可能會出現。造成這個問題的原因是,例項雖然啟動,但是沒有註冊到監聽。這時候,使用lsnrctl status檢視監聽的狀態,顯示為BOLCKED,例項是透過PMON程式註冊到監聽上的,而PMON程式需要在MOUNT狀態下才會啟動。因此造成了上面的錯誤。
可以參考metalink文件:Note:419440.1。


Oracle給出了兩種解決方案,一種方法是對AUXILIARY資料庫直接使用/,
                           對TARGET資料庫透過網路訪問。
第二種方法 為AUXILIARY資料庫設定靜態監聽,在$ORACLE_HOME/network/admin目錄下的listener.ora中新增下面的內容:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME =STANDBY1)
(ORACLE_HOME = /data/oracle/product/11.1)
(GLOBAL_DBNAME=STANDBY1)
)
)

配置靜態監聽後,再次操作,就沒有問題了
[oracle@lfy1 admin]$ rman target / auxiliary sys/oracle@STANDBY1


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

相關文章