mysql有坏块_数据库文件坏块损坏导致打开时报错,该如何来恢复?

原标题:数据库文件坏块损坏导致打开时报错,该如何来恢复?

故障描述

故障主要表现为打开数据库时报错,内容为:“system01.dbf 需要更多的恢复来保持一致性,数据库无法打开”。经过对数据库文件的检测后初步可得出以下结论:sysaux01.dbf 有坏块,sysaux01.dbf 文件损坏。急需恢复 zxfg 用户下的数据。

故障分析

出现上述报错的可能性原因主要有控制文件损坏、数据文件损坏,数据文件与控制文件的 SCN 不一致等。我们对数据库文件进行进一步检测、分析后发现 sysaux01.dbf 文件有坏块。对其进行修复数并启动数据库后,依然有许多查询报错,export 和 data pump 工具不能使用,查询告警日志,分析报错,这是由于 sysaux 文件损坏,导致发生上诉错误。从数据库层面不能修复数据库。system 和用户表空间的数据文件都是正常的,可以利用底层解析数据文件恢复用户数据。

检测与恢复

1. 利用 DBV 检测数据文件

7f7ef8c6ad22cdf30d8a7b5836063256.png

图一:

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

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

7509bf59ba4e7bf380d8892df8a023c0.png

图二:

6fb5d2bfea0d7c09b72cdde753cdd698.png

图三:

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

642b27f222a7c55147f77c93f37c7480.png

图四:

6bb954ced6b0bab9481d566f81ef43d5.png

图五:

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

4 底层解析,将 ZXFG 用户的数据导入到新的数据库中

1b05c12adc7962793d835d0f37d502f0.png

图六:

f273cdb9bb6c4f9e86eb922852602593.png

图六:

结果

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

3b99b824d06670c43700e63f0676ef9f.gif

ae17a9ca57f179d8b245f838c59d4fde.png

SACC2017

责任编辑:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值