一次使用BBED处理坏块

Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE 客户报程序出错,有坏块

ORA-06502: PL/SQL: numeric or value error

ORA-06512: at "SEPDBA.PF_BACKUP_ZPXXJL_UPD", line 116

ORA-01578: ORACLE 数据块损坏(文件号45,块号436285

ORA-01110: 数据文件 45: 'U:\DZJCDB2\SEP_PIC26.DBF'

ORA-02063: preceding 2 lines from LINK_DZJC

ORA-06512

 

找客户确认下了,这是连接到B库报出来的错,其通过DBLINKA库插入了条数据,但是准备使用的块有坏块

 

由于这个库本来有备份,但是客户一直未检查备份,最新的一次备份时间点是2007年,而且中间客户由于归档目录满,就手工删除了很多日志,根本无法进行块恢复。

 

还好这是个历史库,客户确认丢点数据无所谓,那就把这个块给隔离下下

 

一查,这个块属于一个LOB段,DBMS_REPAIR无法隔离LOB

尝试了10231,但是无用,估计DBMS_REPAIR对插入时报告的坏块也无用(已测试,确实无用)

 

既然是LOB段,就是说,这个将要被插入数据的块,实际是无用的,只是一个前版本,DUMP了下这个数据块,确认这个块就存在一条数据的对象。

 

那么如果把这个表的数据CTAS重建一个,就可以正常的处理该问题,但是客户无那么多空间,而且,这个表有4T,无分区,911W条记录。而且又是WIN系统,不知道怎么EXP到一个NULL文件,算了,不管了

 

看来最后的办法只有BBED

 

DBV检查这个块的结果,是CHECKSUM错误,于是打算先尝试下重新计算CHECKSUM

 

SUM APPLY后,还是不对

BBED> set dba 1,436285

        DBA             0x0046a83d (4630589 1,436285)

 

BBED> verify

DBVERIFY - 验证正在启动

FILE =U:\DZJCDB2\SEP_PIC26.DBF

BLOCK = 436285

 

436285已毁坏

***

Corrupt block relative dba: 0x0b46a83d (file 0, block 436285)

Fractured block found during verification

Data in bad block -

 type: 40 format: 2 rdba: 0x0b46a83d

 last change scn: 0x0742.9dd0ea63 seq: 0x2 flg: 0x04

 consistency value in tail: 0xfc752802

 check value in block header: 0xfe5e, computed block checksum: 0x0

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

***

 

 

DBVERIFY - 验证完成

 

检查的总块数:1

已处理的总块数(数据):0

无法处理的总块数(数据):0

已处理的总块数(索引):0

无法处理的总块数(索引):0

空的总块数:0

标记为损坏的总数块:1

汇入的块总数:2

 

BBED> sum

Check value for File 1, Block 436285:

current = 0xfe5e, required = 0xfe5e

 

这时已经报告了一个本质的错误:consistency value in tail

但是当时一直想着CHECKSUM,竟然忽略了本质!幸得熊哥提醒,才看到

原来就是头部的SCNBASE+TYPE+SEQ和尾部的TAIL不等

 

头部的值:ea632802

尾部的值:fc752802

 

那下来就简单了

alter session set events 'immediate trace name flush_cache';

 

set dba 1, 436285

 

dump count 16384

 

find /x 0228fc75

 

modify /x 022863ea

 

dump

 

sum apply

 

verify

 


验证无问题

 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8242091/viewspace-665672/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/8242091/viewspace-665672/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值