網路問題導致10g CRS監聽服務offline 處理

tolywang發表於2009-02-17

節點2 因為網路斷開一會,導致了vip漂移到節點1 。 監聽服務呈現offline 狀態 。

 

ecsrac02$crs_stat -t
Name           Type           Target    State     Host       
------------------------------------------------------------
ora.ecsdb.db   application    ONLINE    ONLINE    ecsrac01   
ora....b1.inst application    ONLINE    ONLINE    ecsrac01   
ora....b2.inst application    ONLINE    ONLINE    ecsrac02   
ora....01.lsnr application    ONLINE    ONLINE    ecsrac01   
ora....c01.gsd application    ONLINE    ONLINE    ecsrac01   
ora....c01.ons application    ONLINE    ONLINE    ecsrac01   
ora....c01.vip application    ONLINE    ONLINE    ecsrac01   
ora....02.lsnr application    OFFLINE   OFFLINE              
ora....c02.gsd application    ONLINE    ONLINE    ecsrac02   
ora....c02.ons application    ONLINE    ONLINE    ecsrac02   
ora....c02.vip application    ONLINE    ONLINE    ecsrac01    

 

檢視服務名稱:

ecsrac02$crs_stat
NAME=ora.ecsdb.db
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ecsrac01

NAME=ora.ecsdb.ecsdb1.inst
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ecsrac01

NAME=ora.ecsdb.ecsdb2.inst
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ecsrac02

NAME=ora.ecsrac01.LISTENER_ECSRAC01.lsnr
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ecsrac01

NAME=ora.ecsrac01.gsd
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ecsrac01

NAME=ora.ecsrac01.ons
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ecsrac01

NAME=ora.ecsrac01.vip
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ecsrac01

NAME=ora.ecsrac02.LISTENER_ECSRAC02.lsnr
TYPE=application
TARGET=OFFLINE
STATE=OFFLINE

NAME=ora.ecsrac02.gsd
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ecsrac02

NAME=ora.ecsrac02.ons
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ecsrac02

NAME=ora.ecsrac02.vip
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ecsrac01

 

試圖開啟單獨監聽服務 (因為vip的漂移,一般不會成功) :

ecsrac02$crs_start   ora.ecsrac02.LISTENER_ECSRAC02.lsnr
ecsrac01 : CRS-1019: Resource ora.ecsrac02.LISTENER_ECSRAC02.lsnr (application) cannot run on ecsrac01
ecsrac02 : CRS-1018: Resource ora.ecsrac02.vip (application) is already running on ecsrac01

CRS-0223: Resource 'ora.ecsrac02.LISTENER_ECSRAC02.lsnr' has placement error.

我們可以看到報錯中有一個  ecsrac02 : CRS-1018: Resource ora.ecsrac02.vip (application) is already running on ecsrac01  錯誤,  表示節點2的VIP已經漂移到了節點1  ( 這裡節點1機器名稱為 ecsrac01 ) 。因為VIP的漂移導致節點2的監聽不能在節點1上執行 (節點2本身的監聽是正常的,但是隻顯示一個例項,可以透過lsnrctl   stat  檢視 ) 。 所以需要監聽正常, 首先需要節點2的VIP 重新執行到節點2上 。  從  ora....c02.vip application    ONLINE    ONLINE    ecsrac01       上可以看到節點2   VIP 是執行在 ecsrac01 節點1機器上 。

我們在處理監聽之前,先處理VIP .  檢視節點2   VIP 對應的服務名稱 (透過 crs_stat   -v  檢視 )

ecsrac02$crs_stop  -f   ora.ecsrac02.vip   
Attempting to stop `ora.ecsrac02.vip` on member `ecsrac01`
Stop of `ora.ecsrac02.vip` on member `ecsrac01` succeeded.

ecsrac02$crs_start    ora.ecsrac02.vip
Attempting to start `ora.ecsrac02.vip` on member `ecsrac02`
Start of `ora.ecsrac02.vip` on member `ecsrac02` succeeded.



ecsrac02$crs_start    ora.ecsrac02.LISTENER_ECSRAC02.lsnr
Attempting to start `ora.ecsrac02.LISTENER_ECSRAC02.lsnr` on member `ecsrac02`
Start of `ora.ecsrac02.LISTENER_ECSRAC02.lsnr` on member `ecsrac02` succeeded.
ecsrac02$

 

檢視狀態: 


ecsrac02$crs_stat -t
Name           Type           Target    State     Host       
------------------------------------------------------------
ora.ecsdb.db   application    ONLINE    ONLINE    ecsrac01   
ora....b1.inst application    ONLINE    ONLINE    ecsrac01   
ora....b2.inst application    ONLINE    ONLINE    ecsrac02   
ora....01.lsnr application    ONLINE    ONLINE    ecsrac01   
ora....c01.gsd application    ONLINE    ONLINE    ecsrac01   
ora....c01.ons application    ONLINE    ONLINE    ecsrac01   
ora....c01.vip application    ONLINE    ONLINE    ecsrac01   
ora....02.lsnr application    ONLINE    ONLINE    ecsrac02   
ora....c02.gsd application    ONLINE    ONLINE    ecsrac02   
ora....c02.ons application    ONLINE    ONLINE    ecsrac02   
ora....c02.vip application    ONLINE    ONLINE    ecsrac02  

 

---------------------------------------------------------------------------------------------------------------------- 

 

當然也可以全盤使用 crs_stop   -all     ,   crs_start  -all  處理 。

但要注意:   crs_stop   -all  只能關閉online 的服務, 只能使用  crs_stop    ora.rac1.LISTENER_RAC1.lsnr        停掉狀態為unknown 狀態的服務 。    同樣  crs_start    -all    只能開啟offline 的服務,如果是unknown 的,先要單獨關閉服務,然後開啟 。 

 

 

 

 

 

 

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

相關文章