Oracle数据库数据恢复案例;数据库异常断电修复方案

一、数据库故障描述:

北京某公司一台oracle数据库,由于设备意外断电重启,导致oracle数据库 错。由于平时没有对数据库进行备份操作,因此联系到北亚数据恢复中心进行数据恢复。

二、oracle数据库恢复过程:

经北亚数据恢复工程师检查数据文件后,文件完整度见下图所示。

数据库数据检查结果

我们分析上图数据可以得知,用户的数据库SYSAUX01.DBF存在大量的坏块,其他位置文件是完整的。

在北亚数据恢复平台上搭建了与客户原数据库平台相同的环境,将oracle数据库挂起。挂起数据库依然出现了与客户反馈的相同的 错( 错内容:ORA-01110错误)。

由此可知该数据库的控制文件已经由于意外断电被修改,需要先修复oracle数据库的控制文件来恢复整个数据库数据。

查询需要恢复数据的oracle数据库的归档日志发现归档日志不连续,可供数据恢复使用的数据库归档日期丢失,北亚数据恢复工程师使用cancel参数进行不完全恢复。见下图所示。

再次执行alter database open 命令,将数据库打开。查询数据库实例状态,数据库 错内容发生改变, 错内容为:ora_00600错误。

北亚数据恢复工程师查询oracle数据库警告日志,追踪查询数据库内部错误情况,部分日志内容为:

ORA-00600: internal error code, arguments: [13013], [5001], [267], [8456009], [5], [8456009], [17], [], [], [], [], []Non-fatal internal error happenned while SMON was doing logging scn->time mapping.

使用北亚数据恢复中心自主研发的DBF解析工具,获取数据,获取数据结果可见下图:

数据库解析结果

创建数据库,在数据库中创建用户,为用户分配表空间,解锁用户并授权。然后,通道数据的搭桥的方式,将解析到的用户对象迁移到数据库中。

三、验证数据库数据恢复结果

使用exp或者expdp导出zxfg用户下的所有对象,本例采用exp导出数据,其命令如下:

exp system/abc  file=C:testdumpzxfg.dmp log=C:testdumpzxfg.log owner=zxfg

查询导出的数据库dmp文件及日志,确认oracle数据库数据恢复完整、正确。由客户亲自对恢复成功的数据库数据进行验证,经验证确认数据恢复完整,本次数据恢复成功。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年6月1日
下一篇 2021年6月1日

相关推荐