【数据库数据恢复】Oracle数据库文件出现坏块,文件损坏导致数据库打开报错的数据恢复案例

Oracle数据恢复故障&分析:

打开oracle数据库报错“system01.dbf需要更多的恢复来保持一致性,数据库无法打开”。用户找到我们数据恢复中心,提供了数据库oraclehome目录的所有文件,要求恢复zxfg用户下的数据。

北亚数据库数据恢复工程师检测故障数据库文件,发现sysaux01.dbf有坏块,文件损坏。由于故障数据库没有备份,不能通过备份去恢复数据库。

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

Oracle数据恢复故障检测和修复过程:

1、利用DBV检测数据文件。

分析结果发现SYSAUX01.DBF文件数据块(Data)检测失败40页,索引页(Index)检测失败29页,其他文件检测正常。

2、修复数据库,打开数据库。

【数据库数据恢复】Oracle数据库文件出现坏块,文件损坏导致数据库打开报错的数据恢复案例

【数据库数据恢复】Oracle数据库文件出现坏块,文件损坏导致数据库打开报错的数据恢复案例

3、查询数据库报错,export和data pump报错。

【数据库数据恢复】Oracle数据库文件出现坏块,文件损坏导致数据库打开报错的数据恢复案例

【数据库数据恢复】Oracle数据库文件出现坏块,文件损坏导致数据库打开报错的数据恢复案例

查阅大量资料,进行各种尝试,最终发现Oracle数据库的这种内部错误目前不能通过命令修复。

4、北亚数据恢复工程师利用底层解析数据库文件,将ZXFG用户的数据导入到新的数据库中。用户亲自检测恢复出来的数据,没有发现问题,完全恢复出用户需要的数据。

【数据库数据恢复】Oracle数据库文件出现坏块,文件损坏导致数据库打开报错的数据恢复案例

【数据库数据恢复】Oracle数据库文件出现坏块,文件损坏导致数据库打开报错的数据恢复案例