欢迎光临
我们一直在努力

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=<F> and <B>
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.  处理坏块

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

 

 

 

 

 

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。