错误告警:

ERROR at line 1:

ORA-01578: ORACLE data block corrupted (file # 10, block # 131)

ORA-01110: data file 10:

'/u01/app/oracle/oradata/orcl/pdborcl/pdborcl_users01.dbf'

最要中是处理思路:

如果有备份有归档

rman target /

blockrecover datafile 10 block 131

好恢复

如果没有备份没归档

处理思路

1:放弃坏块的数据,抢救其他块的数据

2:将坏块打上标记,让业务skipped

一:收集信息

1、文件号

SELECT tablespace_name ,file_name,relative_fno,FILe_id FROM DBA_data_files

SELECT tablespace_name ,file_name,relative_fno,FILe_id FROM DBA_temp_files

2、段信息

select owner,segment_name,segment_type,tablespace_name from dba_extents

WHERE file_id = 10 AND 131 BETWEEN  block_id AND block_id+blocks-1

分区表(partition_name)

select owner,segment_name,segment_type,tablespace_name,partition_name from dba_extents

WHERE file_id = 10 AND 131 BETWEEN  block_id AND block_id+blocks-1

如果是表,同时要考虑表上的索引,主键约束,还有外键约束

select owner,table_name,constraint_name ,r_constraint_name pk_other_table

from user_constraints a where a.constraint_type = 'R'

-- P 代表主键, R 代表外键

如果是分区表,先将有问题的区exchange为一个普通表,按照普通表处理

如果是索引,删掉,重建,如果rebuild需要alter index ...rebulid online如果不带online则会依赖原本的坏块重建索引

如果是主键索引,考虑是否有外键指向该索引

3、dbv确实file中有无其他损坏的块

-bash-3.2$ dbv file=/u01/app/oracle/oradata/orcl/pdborcl/pdborcl_users01.dbf userid=system/5963187

二:处理让应用跳过坏块

sys用户 使用SKIP_CORRUPT_BLOCKS来告知Oracle哪些坏块需要被跳过

BEGIN

DBMS_REPAIR.SKIP_CORRUPT_BLOCKS (

SCHEMA_NAME => 'DSW',

OBJECT_NAME => 'BB',

OBJECT_TYPE => dbms_repair.table_object,

FLAGS => dbms_repair.skip_flag);

END;

/

三:扩展

如果是坏块 报ORA-0600,处理思路是,先将块标记成坏块(多了这一步),然后配置跳过坏块。

如果报ORA 01578s说明已经将坏块标记出了。

oracle block corrupted,ORA-01578: ORACLE data block corrupted相关推荐

  1. [原]Oracle数据文件损坏的模拟和修复(一) |ORA-01578 data block corrupted|

    造成数据块损坏的原因通常是由于开启了异步I/O或者增加了写进程,还有可能是硬件引起的,今天模拟一下该问题的发生及修复方法.由于水平有限,那面疏漏,欢迎大家指正. 创建测试环境 建立测试表空间: cre ...

  2. oracle block corrupted,ORA-01578: ORACLE data block corrupted (file # 9, block # 45729)

    今天在实验的机子的oracle上的一张表中批量插入5000000条记录,在插入过程中途发生了表空间不够的情况,导致插入终止,在表空间上添加一个数据文件,对表中的数据进行查询,发生如下的错误: SQL& ...

  3. zblock 结构_偷窥Data block 的物理结构

    作者:grassbell 1.Data Block物理结构图: 2.一次对block的dump过程: SQL> create table t9 (a varchar(10)); Table cr ...

  4. Oracle 错误代码(ORA)对照表

    ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常. ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 OR ...

  5. 【BBED】使用bbed 修改data block Block Misplaced

    使用bbed 修改数据块物理校验出错的问题. SQL> select * from yangtab; select * from yangtab               * ERROR at ...

  6. ORA-00607 Internal error occurred while making a change to a data block处理

    这个问题是我模拟的故障,具体怎么出现的请参考链接 https://blog.csdn.net/m15217321304/article/details/105223487 --//查看数据库日志 Re ...

  7. Oracle Segments可以跨多个data files吗?

    首先,你需要明白的一点是:数据库的物理结构是由数据库的操作系统文件所决定,每一个Oracle数据库是由三种类型的文件组成:数据文件.日志文件和控制文件.数据库的文件为数据库信息提供真正的物理存储. 每 ...

  8. data block address

    这里讨论的不是数据库管理员DBA,而是数据块地址DBA:Data Block Address! A Data Block Address (DBA) is the address of an Orac ...

  9. Oracle 12C 利用Rman Duplicate搭建 Data Guard

    环境(备库只需要安装数据库软件): 主库:192.168.1.100        OS: CentOS 7.3 X64        DB:    ORACLE12.2.0.1        SID ...

  10. Oracle的tnsnames.ora配置(PLSQL Developer)

    首先打开tnsnames.ora的存放目录,一般为D:\app\Administrator\product\11.2.0\client_1\network\admin,就看安装具体位置了. 步骤阅读 ...

最新文章

  1. VR视觉健康标准在穗发布 专家:VR使用不要超过45分钟
  2. List去重复——多个复杂字段判断去重
  3. Linux下用netstat查看网络状态、端口状态
  4. sql server 2008学习13 触发器
  5. sql中where和on的区别
  6. Java并发控制基础篇 Thread继承类和Runnable实现类
  7. windows+caffe下对CIFAR训练
  8. [转载] public static void main(String[] args) 隐含了什么?
  9. spl_autoload_register函数
  10. APICloud开发者进阶之路 |纯手工编写日程表功能
  11. The type XXX is not API (restriction on required library 'D:\jdk-64\jre\lib\rt.jar')
  12. labview技巧——获取网络时间
  13. 判断多边形是凹多边形还是凸多边形,以及求凹点
  14. 基于raspbian+motion的家庭监控网络
  15. Python操作word插入对象
  16. 前端 | 表格(table)的合并
  17. 关于nodejs gm的各种各样的问题解决方法集合(中文乱码,non-conforming drawing,��Ч���� )
  18. Error : connect Time out
  19. 快应用信息流列表组件
  20. 如果有天我们变陌生了,那么我就重新认识你(晚安心语)

热门文章

  1. 使用iperf测试网速
  2. php制作国旗头像图片,不要再@微信官方了,自己动手一秒制作国旗头像
  3. c语言程序乔奎,迂回
  4. 读《第十一根手指》奏明第三本
  5. html中颜色取样器工具,PS颜色取样器工具使用方法
  6. 大学生数学竞赛试题荟萃 (更新至2017年10月28日)
  7. bluefish编辑器的配置
  8. 4.1 制定项目章程
  9. 如何用PlaySound函数播放wav音乐VS2019
  10. 密信(MeSince) — 免费的全自动邮件加密软件