數(shù)據(jù)庫數(shù)據(jù)恢復(fù)-Oracle數(shù)據(jù)庫文件損壞且無備份的數(shù)據(jù)恢復(fù)案例

Oracle數(shù)據(jù)庫故障&檢測:
打開oracle數(shù)據(jù)庫報錯:“system01.dbf需要更多的恢復(fù)來保持一致性,數(shù)據(jù)庫無法打開”。
北亞企安數(shù)據(jù)恢復(fù)工程師檢測數(shù)據(jù)庫文件發(fā)現(xiàn)sysaux01.dbf有壞塊,sysaux01.dbf文件損壞。數(shù)據(jù)庫無備份,不能通過備份去恢復(fù)數(shù)據(jù)庫。用戶提供了該Oracle數(shù)據(jù)庫Oracle_Home目錄下的所有文件,要求恢復(fù)zxfg用戶下的數(shù)據(jù)。
Tips:Oracle數(shù)據(jù)庫出現(xiàn)“system01.dbf需要更多的恢復(fù)來保持一致性”報錯的原因可能是控制文件損壞、數(shù)據(jù)文件損壞,數(shù)據(jù)文件與控制文件的SCN不一致等。北亞企安數(shù)據(jù)庫恢復(fù)工程師對該Oracle數(shù)據(jù)庫文件做進(jìn)一步檢測、分析,結(jié)果發(fā)現(xiàn)sysaux01.dbf文件有壞塊。對該文件進(jìn)行修復(fù)并啟動數(shù)據(jù)庫后,依然有很多查詢出現(xiàn)報錯,export和data pump工具無法使用。查詢告警日志&分析報錯,確定是報錯原因就是sysaux文件損壞,從數(shù)據(jù)庫層面無法修復(fù)數(shù)據(jù)庫。由于system和用戶表空間的數(shù)據(jù)文件都是正常的,可以通過底層解析數(shù)據(jù)庫文件來恢復(fù)用戶數(shù)據(jù)。
Oracle數(shù)據(jù)庫數(shù)據(jù)恢復(fù)過程:
1、使用DBV工具檢測Oracle數(shù)據(jù)庫數(shù)據(jù)文件:

結(jié)果發(fā)現(xiàn)SYSAUX01.DBF文件數(shù)據(jù)塊(Data)檢測失敗40頁,索引頁(Index)檢測失敗29頁,其他文件檢測正常。
2、北亞企安數(shù)據(jù)庫恢復(fù)工程師對Oracle數(shù)據(jù)庫進(jìn)行修復(fù),成功打開數(shù)據(jù)庫。


?
3、雖然能成功打開Oracle數(shù)據(jù)庫,但是查詢數(shù)據(jù)庫報錯、export和data pump報錯。


北亞企安數(shù)據(jù)庫恢復(fù)工程師查閱大量資料并進(jìn)行了各種嘗試后,判斷Oracle數(shù)據(jù)庫的這種內(nèi)部錯誤應(yīng)該無法通過命令來修復(fù)。
4、北亞企安數(shù)據(jù)恢復(fù)工程師底層解析數(shù)據(jù)庫文件,然后將ZXFG用戶的數(shù)據(jù)導(dǎo)入到新的數(shù)據(jù)庫中。


5、用戶方工程師在新數(shù)據(jù)庫環(huán)境中對恢復(fù)出來的ZXFG用戶的數(shù)據(jù)進(jìn)行了反復(fù)檢查&驗(yàn)證,確認(rèn)恢復(fù)出來的數(shù)據(jù)完整有效。本次數(shù)據(jù)恢復(fù)工作完成。