Oracle数据库恢复案例
当我们在使用Oracle数据库时,突然断电,造成很多问题,致使旧数据丢失,影响了数据的正确性,破坏了数据库。此时,用户急切需求恢复数据。本文以此为例,讲述数据库数据恢复。
一、案例描述:
数据库因突然断电,,数据库无法打开;数据库没有备份,归档日志也不连续。客户提供了数据库的在线文件,急需恢复zxfg用户下的数据。
二、恢复流程:
1 数据库的故障检测
2 尝试挂起数据库并修复数据库
3解析数据文件
4验证数据
5导出数据与交付数据(导入)
三、恢复数据
1数据库的故障检测
利用DBV 命令检测数据文件的完整性
结果如下:
(Data)检测失败40页,索引页(Index)检测失败29页,。
结论:通过dbv对数据文件的完整性检验,,其他检测的文件完整。
2 用客户的数据库本地挂起数据库,尝试修复数据库。
:windows server 2008 x86,安装oracle for 32-bit
版本数据库,挂起数据库
起库报ORA-01110错误,。使用recover database 命令,利用在线日志做介质恢复。
数据库的控制文件已被修改,需要使用控制文件恢复数据库
恢复数据库需要2016_01_19的11号归档日志。由于归档日志丢失,使用cancel参数进行不完全恢复。
再次执行alter database open 命令,数据库打开。
查询实例状态,数据库报ora_00600错误;进行其他查询,其中一些查询可以进行,一些查询报错,而且报错都是ora_00600错误。
;
警告日志部分内容如下:
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.
进行各种尝试,查阅大量资料。数据库的这种内部错误,不能通过命令修复。尝试导出数据库。
用expdp/exp工具导出数据库;
expdp导出数据库报错,和上面查询报同样的错误。,导出数据库失败
Oracle数据库恢复案例 来自淘豆网m.daumloan.com转载请标明出处.