如何格式化不属于任何段的损坏块 (Doc ID 1526163.1)

0    937    5

Tags:

👉 本文共约3188个字,系统预计阅读时间或需12分钟。

适用于:

Oracle Database - Enterprise Edition - 版本 8.1.7.4 到 11.2.0.1.0 [发行版 8.1.7 到 11.2]
Oracle Database Cloud Schema Service - 版本 N/A 和更高版本
Gen 1 Exadata Cloud at Customer (Oracle Exadata Database Cloud Machine) - 版本 N/A 和更高版本
Oracle Cloud Infrastructure - Database Service - 版本 N/A 和更高版本
Oracle Database Cloud Exadata Service - 版本 N/A 和更高版本
本文档所含信息适用于所有平台

症状

  1. Rman 备份失败,显示 ORA-19566 错误,且被报告的坏块不属于任何对象
  2. Dbverify 显示存在坏块
  3. 坏块不属于任何对象

原因

在重新使用和重新格式化坏块之前,RMAN 和 DBV 仍会一直报告坏块。

解决方案

免责声明:本说明中给出的步骤并不总是保证问题解决。

解决此类问题的一个可能的方法如下。请注意,它不能保证问题解决,但它已知解决了几种案例的问题。如果在某个数据文件中报告有很多块损坏,请在第六步提示输入 blocknumber 中输入已经报告的最高的坏块号码。

当一个对象被重新创建,已经分配给它(甚至是损坏的块)的块将变成空闲空间(free space)。他们在那里等待重新分配到一个需要额外空间的对象。一旦它们被重新分配到用于一个对象上新的extent,只有当任何DML操作使用到这些块(即使损坏的块,处在空闲空间,现在需要被分配),他们将在DML操作更改、使用这些块之前,被重新格式化掉。

需要注意的是extent的简单的分配不格式化块。第7步分配的extent和第8步执行DML操作,使用在第七步中分配的块,这样的坏块才被重用和格式化。

在本文档中,我们尝试手动重新格式化坏块。

第 1 步 - 确定损坏的数据文件

损坏可以被报告在应用层,如DBV和RMAN,或alert.log。

例如,您可以在您的RMAN备份过程中获得以下信息:

坏块位于文件 E:\xxxx\test.ORA 中。

第 2 步 - 在受影响的数据文件上运行 DBV/Rman 验证并检查坏块

在报告坏块的数据文件上运行 dbverify。

检查{输出文件名}结果

示例输出:

请注意,在数据文件 7 中,报告 块 48740 损坏。

或者 在RMAN中

对于整个数据库

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!
如何格式化不属于任何段的损坏块 (Doc ID 1526163.1)后续精彩内容已被小麦苗无情隐藏,请输入验证码解锁本站所有文章!
验证码:
请先关注本站微信公众号,然后回复“验证码”,获取验证码。在微信里搜索“DB宝”或者“www_xmmup_com”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复

嘿,我是小麦,需要帮助随时找我哦。
  • 18509239930
  • 个人微信

  • DB宝
  • 个人邮箱
  • 点击加入QQ群
  • 个人微店

  • 回到顶部