資料庫檔案壞塊損壞導致開啟時報錯的恢復方法

dbasdk發表於2017-08-28
故障描述
故障主要表現為開啟資料庫時報錯,內容為:“system01.dbf需要更多的恢復來保持一致性,資料庫無法開啟”。經過對資料庫檔案的檢測後初步可得出以下結論:sysaux01.dbf有壞塊,sysaux01.dbf檔案損壞。急需恢復zxfg使用者下的資料。

故障分析
出現上述報錯的可能性原因主要有控制檔案損壞、資料檔案損壞,資料檔案與控制檔案的SCN不一致等。我們對資料庫檔案進行進一步檢測、分析後發現sysaux01.dbf檔案有壞塊。對其進行修復數並啟動資料庫後,依然有許多查詢報錯,export和 data pump工具不能使用,查詢告警日誌,分析報錯,這是由於sysaux檔案損壞,導致發生上訴錯誤。從資料庫層面不能修復資料庫。system和使用者表空間的資料檔案都是正常的,可以利用底層解析資料檔案恢復使用者資料。

檢測與恢復
1 利用DBV 檢測資料檔案
圖一:

分析結果發現SYSAUX01.DBF檔案資料塊(Data)檢測失敗40頁,索引頁(Index)檢測失敗29頁,其他檔案檢測正常。
2 修復資料庫,開啟資料庫
圖二:
 
圖三:

3 查詢資料庫報錯,export 和data pump報錯
圖四:

圖五:

進行各種嘗試 ,查閱大量資料。資料庫的這種內部錯誤,不能透過命令修復。
4底層解析,將ZXFG使用者的資料匯入到新的資料庫中
圖六:


圖六:


結果
底層解析資料庫檔案,將zxfg使用者的資料匯入到新的資料庫中,完全恢復使用者需要的資料,恢復100%的資料。

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

相關文章