数据库报错“system01.dbf需要更多的恢复来保持一致性,数据库无法打开”

简介:

故障描述

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


故障分析

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


检测与恢复

1 利用DBV 检测数据文件

图一:

wKiom1mdKu7gcL4IAABklrBlgh0656.png-wh_50

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

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

图二:

 wKioL1mdKu-Rll8pAABVRo3XuPU227.png-wh_50

图三:

wKioL1mdKvjTkAZ5AABQ-t-dXGo522.png-wh_50

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

图四:

wKioL1mdKwSAciZTAAAilHKaPwY340.png-wh_50

图五:

wKiom1mdKxihJ5DYAABcDdq4nxU592.png-wh_50

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

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

图六:

wKiom1mdKySRWzokAAD1Nc3Z2y8380.png-wh_50

图七:

wKiom1mdKzGDsbtnAAG-0Y-1EZM940.png-wh_50


结果

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









本文转自 宋国建 51CTO博客,原文链接:http://blog.51cto.com/sun510/1958658,如需转载请自行联系原作者
目录
相关文章
|
3月前
|
SQL 数据库
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
SQL Server附加数据库出现错误823,附加数据库失败。数据库没有备份,无法通过备份恢复数据库。 SQL Server数据库出现823错误的可能原因有:数据库物理页面损坏、数据库物理页面校验值损坏导致无法识别该页面、断电或者文件系统问题导致页面丢失。
104 12
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
|
3月前
|
canal 缓存 NoSQL
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
根据对一致性的要求程度,提出多种解决方案:同步删除、同步删除+可靠消息、延时双删、异步监听+可靠消息、多重保障方案
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
|
3月前
|
关系型数据库 MySQL 数据库
ORM对mysql数据库中数据进行操作报错解决
ORM对mysql数据库中数据进行操作报错解决
90 2
|
4月前
|
消息中间件 缓存 监控
如何保证缓存和数据库的一致性?
保证缓存和数据库的一致性的做法
|
3月前
|
SQL 关系型数据库 数据库
PostgreSQL数据库报错 ERROR: multiple default values specified for column "" of table "" 如何解决?
PostgreSQL数据库报错 ERROR: multiple default values specified for column "" of table "" 如何解决?
346 59
|
2月前
|
SQL 关系型数据库 MySQL
|
3月前
|
存储 SQL 关系型数据库
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
MySQL如何进行分库分表、数据迁移?从相关概念、使用场景、拆分方式、分表字段选择、数据一致性校验等角度阐述MySQL数据库的分库分表方案。
475 15
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
|
2月前
|
关系型数据库 MySQL Linux
易优CMS请重启MYSQL数据库,或者联系空间服务商处理[错误报错·····]出现以下提示该怎么办?-eyoucms
易优CMS请重启MYSQL数据库,或者联系空间服务商处理[错误报错·····]出现以下提示该怎么办?-eyoucms
|
4月前
|
SQL 数据可视化 关系型数据库
成功解决7版本的数据库导入 8版本数据库脚本报错问题
您提供的链接是一篇关于如何解决在MySQL数据库中导入脚本时出现版本兼容性问题的博客文章。文章中提到,如果在MySQL 5.7之前的版本中使用utf8mb4_0900_ai_ci排序规则,会遇到"Unknown collation"错误。解决办法包括升级MySQL版本到8.0或更高,或者更改排序规则为utf8mb4_general_ci或utf8mb4_unicode_ci,并提供了修改SQL脚本的示例。 如果您需要更详细的信息或有其他问题,请告诉我。
|
4月前
|
SQL 分布式计算 调度
实时数仓 Hologres操作报错合集之在与PostgreSOL数据库进行通信时出现报错,如何解决
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。