千家信息网

ORA-19566 exceeded limit of 0 corrupt blocks数据坏块处理

发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,问题描述RMAN备份失败,报错如下:一般坏块处理过程1、首先确定是什么段、哪个段坏了,是索引还是表? 执行以下语句看哪个段坏了SQL>Select b.segment_name,b.segment_t
千家信息网最后更新 2025年01月24日ORA-19566 exceeded limit of 0 corrupt blocks数据坏块处理

问题描述

RMAN备份失败,报错如下:

一般坏块处理过程

1、首先确定是什么段、哪个段坏了,是索引还是表?
执行以下语句看哪个段坏了
SQL>Select b.segment_name,b.segment_type from dba_extents a, dba_segments b
where a.file_id= and between a.block_id and a.block_id+a.blocks-1
and a.segment_name=b.segment_name and a.owner=b.owner;
这里的 F 指的是 file#,B 指的是 block#
2. 如果是物理坏块,需要更换磁盘,分几种情况:
1)如果是文件系统且做了raid的,在messages里会显示具体哪个磁盘出问题了,更换磁盘,系统会自动恢复磁盘。
2)如果是文件系统且没做raid,但有备份和归档,在messages里会显示具体哪个磁盘出问题了,更换磁盘,然后用数据文件备份和归档、在线日志恢复到最后的时间点。
3)如果是文件系统且没做raid,没有备份,那么就要按下面的步骤3里的操作恢复好坏块后,再更换磁盘。
4)如果是asm管理磁盘阵列,将亮红灯的磁盘拔掉,换个新的,系统会自动恢复磁盘。
3. 如果是逻辑坏块,就看是索引坏块还是表坏块。
如果是索引坏块,那么直接删除索引,重建索引就好。
如果是表坏块,分三种情况:
1)有rman备份,利用rman备份恢复坏块。命令:blockrecover datafile file#

本次处理过程

1. 使用dbv检查一下是否有数据坏块

[oracle@svr1-219 backup_script]$ dbv file=/oradata3/o219g2/income_gs_main_tst_tbs12.dbf

DBVERIFY: Release 10.2.0.4.0 - Production on Fri Nov 2 11:52:58 2012

Copyright (c) 1982, 2007, Oracle. All rights reserved.

DBVERIFY - Verification starting : FILE = /oradata3/o219g2/income_gs_main_tst_tbs12.dbf

Page 386924 is marked corrupt

Corrupt block relative dba: 0x0d85e76c (file 54, block 386924)

Bad check value found during dbv:

Data in bad block:

type: 6 format: 2 rdba: 0x0d85e76c

last change scn: 0x02d1.805a7552 seq: 0x1 flg: 0x06

spare1: 0x0 spare2: 0x0 spare3: 0x0

consistency value in tail: 0x75520601

check value in block header: 0x584e

computed block checksum: 0xfbab

Page 404230 is marked corrupt

Corrupt block relative dba: 0x0d862b06 (file 54, block 404230)

Bad check value found during dbv:

Data in bad block:

type: 6 format: 2 rdba: 0x0d862b06

last change scn: 0x02d1.805a7552 seq: 0x1 flg: 0x06

spare1: 0x0 spare2: 0x0 spare3: 0x0

consistency value in tail: 0x75520601

check value in block header: 0x339

computed block checksum: 0x7b41

DBVERIFY - Verification complete

Total Pages Examined : 512000

Total Pages Processed (Data) : 304782

Total Pages Failing (Data) : 0

Total Pages Processed (Index): 115775

Total Pages Failing (Index): 0

Total Pages Processed (Other): 9000

Total Pages Processed (Seg) : 0

Total Pages Failing (Seg) : 0

Total Pages Empty : 82441

Total Pages Marked Corrupt : 2

Total Pages Influx : 0

Highest block SCN : 2163414262 (721.2163414262)

[oracle@svr1-219 backup_script]$

2. 查看是什么对象存在坏块

SQL> SELECT segment_type, owner, segment_name

2 FROM dba_extents

3 WHERE file_id = 54

4 and 386924 between block_id AND block_id + blocks - 1;

SEGMENT_TYPE OWNER SEGMENT_NAME

------------------ ------------------- ------------------------------------------------

INDEX INCOME_GS_MAIN_TST PK_T_RPT_SOA_RECON_DETAIL

SQL> SELECT segment_type, owner, segment_name

2 FROM dba_extents

3 WHERE file_id = 54

4 and 404230 between block_id AND block_id + blocks - 1;

SEGMENT_TYPE OWNER SEGMENT_NAME

------------------ ------------------ -----------------------------------

INDEX INCOME_GS_MAIN_TST PK_T_RPT_SOA_RECON_DETAIL

3. 处理坏块

上面显示是索引,这样处理起来比较简单,删除重建就可以了



磁盘 备份 索引 系统 处理 文件 问题 数据 情况 过程 还是 命令 好坏 对象 日志 时间 步骤 物理 磁盘阵列 红灯 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 C语言软件开发面试选择题 云服务器什么系统安全 新津国家网络安全宣传 东莞最大软件开发公司有哪些 利用网络技术挣外快 天津智能软件开发销售价格 数据库查询最高和最低成绩 数据库更新检测 网络技术考试题答案 软件开发公司员工都做什么的 wps如何建立数据库 南京成麦软件开发有限公司 为福天下互联网科技湖南有限公司 ubuntu系统安装数据库 进思互联网科技有限公司 华为服务器出货量排行 上海鸿索网络技术有限公司 镇 网络安全自查报告 安徽常用软件开发收购价格 赋码软件开发需要多长时间 虚拟主机和云服务器有什么区别 天津服务器防篡改软件 软件开发过程记录表 软件开发管理团队现状 本科 网络安全 课题 别的手机无法连接华为服务器 tbc猎人宝宝数据库 浦东新区工商软件开发信息推荐 c连接数据库方法 镇海计算机软件开发企业
0