在網上看到的一些關閉Oracle Grid Infrastructure教程中,很多在關閉數據后就開始關閉ASM,結果提示如下的錯誤。
[grid@rhvm1 ~]$ srvctl stop asm
PRCR-1065 : Failed to stop resource ora.asm
CRS-2529: Unable to act on 'ora.asm' because that would require stopping or relocating 'ora.ASM.dg', but the force option was not specified
原因: 從11.2 Grid Infrastructure開始, ASM diskgroups也注冊為CRS資源。而diskgroup資源是依賴於ASM的,所以不能首先要停止'ora.ASM.dg'這個服務,或者直接使用-f選項強制停止ASM。
在我的單實例(11gR2)+ASM測試環境上,可以看到還有兩個dg資源屬於在線狀態。
[grid@rhvm1 ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ASM.dg
ONLINE ONLINE rhvm1
ora.DATA.dg
ONLINE ONLINE rhvm1
ora.asm
ONLINE ONLINE rhvm1 Started
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
1 ONLINE ONLINE rhvm1
ora.diskmon
1 ONLINE ONLINE rhvm1
ora.test.db
1 OFFLINE OFFLINE Instance Shutdown
因此正確的姿勢是先停止dg資源。
[grid@rhvm1 ~]$ srvctl stop diskgroup -g data
[grid@rhvm1 ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ASM.dg
ONLINE ONLINE rhvm1
ora.DATA.dg
OFFLINE OFFLINE rhvm1
ora.asm
ONLINE ONLINE rhvm1 Started
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
1 ONLINE ONLINE rhvm1
ora.diskmon
1 ONLINE ONLINE rhvm1
ora.test.db
1 OFFLINE OFFLINE Instance Shutdown
[grid@rhvm1 ~]$ srvctl stop diskgroup -g asm
[grid@rhvm1 ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ASM.dg
OFFLINE OFFLINE rhvm1
ora.DATA.dg
OFFLINE OFFLINE rhvm1
ora.asm
ONLINE ONLINE rhvm1 Started
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
1 ONLINE ONLINE rhvm1
ora.diskmon
1 ONLINE ONLINE rhvm1
ora.test.db
1 OFFLINE OFFLINE Instance Shutdown
-- EOF --