数据恢复故障描述:打开oracle数据库报错 “system01.dbf需要更多的恢复来保持一致性,数据库无法打开”。工程师检测数据库文件发现sysaux01.dbf有坏块,sysaux01.dbf文件损坏。数据库没有备份,不能通过备份去恢复数据库。客户提供了数据库oraclehome目录的所有文件,急需恢复zxfg用户下的数据。

oracle数据库故障分析:“system01.dbf需要更多的恢复来保持一致性”,可能是控制文件损坏、数据文件损坏,数据文件与控制文件的SCN不一致等。对数据库文件进一步检测、分析,结果sysaux01.dbf文件有坏块。修复数并启动数据库后,许多查询报错,export和 data pump工具不能使用,查询告警日志,分析报错,由于sysaux文件损坏,导致发生上诉错误。从数据库层面不能修复数据库。system和用户表空间的数据文件都是正常的,可以利用底层解析数据文件,恢复用户数据。

oracle数据库检测与数据恢复恢复:
1 利用DBV 检测数据文件
图一Oracle数据库文件坏块损坏的恢复方法_第1张图片
分析结果发现SYSAUX01.DBF文件数据块(Data)检测失败40页,索引页(Index)检测失败29页,其他文件检测正常。

2 修复数据库,打开数据库
图二Oracle数据库文件坏块损坏的恢复方法_第2张图片
图三Oracle数据库文件坏块损坏的恢复方法_第3张图片

3 查询数据库报错,export 和data pump报错
图四Oracle数据库文件坏块损坏的恢复方法_第4张图片
图五Oracle数据库文件坏块损坏的恢复方法_第5张图片
进行各种尝试 ,查阅大量资料。数据库的这种内部错误,不能通过命令修复。
4底层解析,将ZXFG用户的数据导入到新的数据库中
图六Oracle数据库文件坏块损坏的恢复方法_第6张图片
图七Oracle数据库文件坏块损坏的恢复方法_第7张图片

数据库数据恢复结果
底层解析数据库文件,将zxfg用户的数据导入到新的数据库中,完全恢复用户需要的数据,恢复100%的数据,客户非常满意。