ASM例項出現ORA-4031錯誤導致例項崩潰

kunlunzhiying發表於2017-01-04

資料庫的ASM例項出現了ORA-4031錯誤,導致了資料庫例項的崩潰。

 

 

詳細的錯誤資訊為:

Wed Jul 25 08:03:45 2012
Errors in file /u01/app/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_asmb_34668994.trc (incident=808023):
ORA-04031: unable to allocate 3432 bytes of shared memory ("shared pool","unknown object","sga heap(1,0)","ASM file")
Incident details in: /u01/app/oracle/diag/rdbms/orcl/ORCL1/incident/incdir_808023/ORCL1_asmb_34668994_i808023.trc
Wed Jul 25 08:03:47 2012
Trace dumping is performing id=[cdmp_20120725080347]
Errors in file /u01/app/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_asmb_34668994.trc:
ORA-15064: communication failure with ASM instance
ORA-04031: unable to allocate 3432 bytes of shared memory ("shared pool","unknown object","sga heap(1,0)","ASM file")
ASMB (ospid: 34668994): terminating the instance due to error 15064
Wed Jul 25 08:03:47 2012
ORA-1092 : opiodr aborting process unknown ospid (29819058_1)
Wed Jul 25 08:03:48 2012
Errors in file /u01/app/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_q002_25886884.trc:
ORA-15064: communication failure with ASM instance
Wed Jul 25 08:03:47 2012
Errors in file /u01/app/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_arc3_36503776.trc:
ORA-15064: communication failure with ASM instance
Wed Jul 25 08:03:47 2012
Errors in file /u01/app/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_q001_32374808.trc:
ORA-15064: communication failure with ASM instance
Errors in file /u01/app/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_arc3_36503776.trc:
ORA-15064: communication failure with ASM instance
Master archival failure: 15064
Wed Jul 25 08:03:48 2012
ORA-1092 : opiodr aborting process unknown ospid (12058986_1)
Wed Jul 25 08:03:49 2012
ORA-1092 : opitsk aborting process
Wed Jul 25 08:03:49 2012
License high water mark = 334
Instance terminated by ASMB, pid = 34668994
USER (ospid: 35914002): terminating the instance
Instance terminated by USER, pid = 35914002

顯然資料庫例項的出現的崩潰是由於ASM例項的錯誤導致的。根據Oracle的推薦,在11g中使用MEMORY_TARGET引數的話,那麼MEMORY_TARGET至少應該分配256M以上,而且隨著DISK GROUP的容量的增長,SHARED_POOL所需要的空間也隨著增加。因此對於磁碟組空間比較大的ASM例項而言,採用預設引數作為MEMORY_TARGET顯然是不夠的。

對於當前環境,只需要簡單的調整ASM例項的MEMORY_TARGET引數,將其擴大到500M以上,就可以避免該錯誤的產生。

 

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

相關文章