RESTORE資料時10G+ASM遇到ORA-4031及ORA-00600 KSSRMP1錯誤

還不算暈發表於2015-12-13
10G ASM遇到ORA-4031及ORA-00600 KSSRMP1錯誤
近期一朋友在AIX6.1+10.2.0.4 RAC==》AIX6.1+10.2.0.4單節點RAC做DATAGUARD。
在AIX6.1+10.2.0.4單節點RAC上做RESTORE還原資料時,遇到錯誤:
ASM例項報錯有的ORA-600 [kssrmp1]以及ORA-04031錯誤,還有如下:

ORA-19870: error reading backup piece/full.bak
ORA-19504: failed to create file "+DATA1"
ORA-17502: ksfdcre:4 Failed to create file +DATA1
ORA-15055: unable to connect to ASM instance


介入時候,因為客戶是通過加密機+TEAMVIEWER+QQ等遠端過去,只留有幾個截圖。
時間緊急,首先對於600錯誤分析,查詢MOS文件,是有相對應的BUG:
ORA-600 [kssrmp1] (文件 ID 139162.1)
Bug 7308941 - ORA-600 [KSSRMP1] in ASM (文件 ID 7308941.8)
不過沒得到相應TRACE檔案,是否完全匹配此BUG,不好進一步確認。

對於ORA-19504等在ASM的磁碟組中無法建立檔案等報錯,CRS叢集件的相應服務均正常,ASM磁碟組也MOUNT狀態;
使用ASMCMD命令去相應磁碟組中檢視,控制檔案已經建立在裡面了,資料庫也可以MOUNT;因此判斷對ASM磁碟組+DATA讀寫是沒有問題的。

對於報錯的ORA-04031錯誤,ASM例項使用的SGA自動管理,查詢V$SGAINFO,共享池大小是128M(沒日誌記不太清..),對此進行了增加,增大到256M;
關於ASM的共享池分配,ASM & Shared Pool (ORA-4031) (文件 ID 437924.1)裡面也有較為詳細的說明;
共享池大小的計算:

For disk groupsusing external redundancy, every 100 GB of space needs 1 MB of extra sharedpool plus 2 MB.

For disk groupsusing normal redundancy, every 50 GB of space needs 1 MB of extra shared poolplus 4 MB.

For disk groupsusing high redundancy, every 33 GB of space needs 1 MB of extra shared poolplus 6 MB.

對於11.2.0.3/11.2.0.4/12.1版本,建議值是:

SQL> alter systemset memory_max_target=4096m scope=spfile;

SQL> alter systemset memory_target=1536m scope=spfile;

Note: In11.2.0.3/11.2.0.4對 MEMORY_TARGET大小的計算方式:

1) If PROCESSESparameter is explicitly set:

The MEMORY_TARGETshould be set to no less than:

      256M + PROCESSES  * 132K (64bit)   or 256M + PROCESSES  * 120K (32bit)

2) If PROCESSESparameter is not set:

The MEMORY_TARGETshould be set to no less than:

      256M + (available_cpu_cores * 80 + 40) *132K  (64bit) or 256M +(available_cpu_cores * 80 + 40) * 120K (32bit)



之後重新進行RESTORE操作(只嘗試恢復了1、2號兩個資料檔案),可以正確完成。

測試恢復1、2號兩個資料檔案後,使用全庫RESTORE指令碼進行了恢復,次日聽說恢復了一夜,已經恢復完成了。
----------------
關於此次問題的處理,是否BUG最終也未進行進一步確認;通過判斷ASM的磁碟組是正常的,之後調整了ASM共享池大小;然後能夠正常RESTORE資料,協助也就結束了。
其實整個恢復過程還涉及其它的問題,如客戶對資料庫在磁碟組中位置的疑惑:
只指定+DATA磁碟組,會預設建立+DATA/DB_UNIQUE_NAME/file_type/filename  這樣格式,file_type通常是datafile/controlfile等;
至於此RESTORE過程比較慢(備份集大小700G/是否壓縮也不確定);在恢復測試時也相應增加了LARGE_POOL;關於RMAN備份、恢復的進一步調優,此處就不多說了;可以參考文件:
Note.360443.1 RMAN Backup Performance
Note 740911.1 RMAN Restore Performance
Note 247611.1 Known RMAN Performance Problems
NOTE.579158.1 Advise On How To Improve Rman Performance
NOTE.296985.1 RMAN Performance Data Gathering
Note.463227.1 Oracle10g RMAN Recovery Catalog Known Performance Issues

相關文章