oracle中rman坏块,Oracle基础教程之通过RMAN修复坏块
发布日期:2021-06-24 13:08:31 浏览次数:2 分类:技术文章

本文共 4211 字,大约阅读时间需要 14 分钟。

通过dbv和rman blockrecover对Oracle数据库坏块进行修复。

通过dbv和rman blockrecover对Oracle数据库坏块进行修复。

(1)rman备份时alert.log报如下错误:

Fri Jul 2 12:41:36 2010

Hex dump of (file 12, block 2718618) in trace file /u01/app/oracle/admin/bi/udump/bi_ora_31213.trc

Corrupt block relative dba: 0x03297b9a (file 12, block 2718618)

Fractured block found during backing up datafile

Data in bad block:

type: 6 format: 2 rdba: 0x03297b9a

last change scn: 0x0002.482fc15b seq: 0x1 flg: 0x06

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

consistency value in tail: 0x77b20601

check value in block header: 0x253

computed block checksum: 0xb6e9

Reread of blocknum=2718618, file=/u01/oradata/BI/estaging_user01.712.714072365. found same corrupt data

Reread of blocknum=2718618, file=/u01/oradata/BI/estaging_user01.712.714072365. found same corrupt data

Reread of blocknum=2718618, file=/u01/oradata/BI/estaging_user01.712.714072365. found same corrupt data

Reread of blocknum=2718618, file=/u01/oradata/BI/estaging_user01.712.714072365. found same corrupt data

Reread of blocknum=2718618, file=/u01/oradata/BI/estaging_user01.712.714072365. found same corrupt data

(2)查询数据库,可知含有坏块的对象:

SQL> col SEGMENT_NAME format a20

col PARTITION_NAME format a10

select owner,segment_name,partition_name from dba_extents where file_id = 12 and 2718618 between block_id and block_id + blocks-1;

OWNER SEGMENT_NAME PARTITION_

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

ESTAGING LOG_RECORD_DETAIL_4 P20100630

(3)但全表扫描却没有任何问题:

SQL> select count(*) from ESTAGING.LOG_RECORD_DETAIL_4 partition (P20100630);

COUNT(*)

----------

449937

SQL> select count(*) from ESTAGING.LOG_RECORD_DETAIL_4;

COUNT(*)

----------

42049608

(4)使用dbv检查发现有一个坏块(耗时较长):

$ dbv file=/u01/oradata/BI/estaging_user01.712.714072365 BLOCKSIZE=8192

DBVERIFY: Release 10.2.0.4.0 - Production on Fri Jul 2 14:15:49 2010

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

DBVERIFY - Verification starting : FILE = /u01/oradata/BI/estaging_user01.712.714072365

Page 2718618 is influx - most likely media corrupt

Corrupt block relative dba: 0x03297b9a (file 12, block 2718618)

Fractured block found during dbv:

Data in bad block:

type: 6 format: 2 rdba: 0x03297b9a

last change scn: 0x0002.482fc15b seq: 0x1 flg: 0x06

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

consistency value in tail: 0x77b20601

check value in block header: 0x253

computed block checksum: 0xb6e9

DBVERIFY - Verification complete

Total Pages Examined : 2748160

Total Pages Processed (Data) : 2462446

Total Pages Failing (Data) : 0

Total Pages Processed (Index): 235234

Total Pages Failing (Index): 0

Total Pages Processed (Other): 24969

Total Pages Processed (Seg) : 0

Total Pages Failing (Seg) : 0

Total Pages Empty : 25510

Total Pages Marked Corrupt : 1

Total Pages Influx : 1

Highest block SCN : 1229607770 (2.1229607770)

(5)使用rman检查含有坏块的数据文件(耗时较长),, 期间观察alert.log会发现同样的提示:

RMAN> backup validate datafile 12;

这个时候访问v$database_block_corruption可以看到详细的坏块的信息:

SQL> select * from v$database_block_corruption;

FILE# BLOCK# BLOCKS CORRUPTION_CHANGE# CORRUPTIO

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

12 2718618 1 0 FRACTURED

(6)使用rman进行块恢复:

RMAN> blockrecover datafile 12 block 2718618 from backupset;

(7)块恢复后,执行BLOCKRECOVER CORRUPTION LIST,会自动按照V$DATABASE_BLOCK_CORRUPTION进行修复(耗时较长):

RMAN> BLOCKRECOVER CORRUPTION LIST;

(8)这个时候再访问v$database_block_corruption就看不到详细的坏块信息了:

SQL> select * from v$database_block_corruption;

no rows selected

(9)再使用dbv检查发现没有坏块了(耗时较长):

$ dbv file=/u01/oradata/BI/estaging_user01.712.714072365 BLOCKSIZE=8192

DBVERIFY: Release 10.2.0.4.0 - Production on Fri Jul 2 15:38:15 2010

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

DBVERIFY - Verification starting : FILE = /u01/oradata/BI/estaging_user01.712.714072365

DBVERIFY - Verification complete

Total Pages Examined : 2749440

Total Pages Processed (Data) : 2463763

Total Pages Failing (Data) : 0

Total Pages Processed (Index): 235250

Total Pages Failing (Index): 0

Total Pages Processed (Other): 24981

Total Pages Processed (Seg) : 0

Total Pages Failing (Seg) : 0

Total Pages Empty : 25446

Total Pages Marked Corrupt : 0

Total Pages Influx : 0

Highest block SCN : 1230819157 (2.1230819157)

--End--

logo.gif 本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:php中文网

转载地址:https://blog.csdn.net/weixin_32956805/article/details/116363183 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:oracle数据库优化11g,ORACLE 11G SQL 调优
下一篇:php 选择日期限制多少人代码,如何使用element-ui 限制日期选择

发表评论

最新留言

路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年04月04日 18时07分58秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

JavaScript——String转DOM对象解决方案 2019-04-28
JavaScript——易班优课YOOC课群在线测试自动答题解决方案(一)答案获取 2019-04-28
Spring Boot——易班优课YOOC课群在线测试自动答题解决方案(二)答案储存 2019-04-28
Spring Boot——易班优课YOOC课群在线测试自动答题解决方案(三)答案查询 2019-04-28
JavaScript——易班优课YOOC课群在线测试自动答题解决方案(四)答案显示 2019-04-28
JavaScript——易班优课YOOC课群在线测试自动答题解决方案(五)简单插件 2019-04-28
Spring Boot——易班优课YOOC课群在线测试自动答题解决方案(六)后端改造 2019-04-28
汇编语言——100个数中的最大数 2019-04-28
汇编语言——正数数组P和负数数组N 2019-04-28
JavaScript——易班优课YOOC课群在线测试答案隐藏解决方案 2019-04-28
汇编语言——《分支与循环程序设计》实验任务书 2019-04-28
汇编语言——《分支与循环程序设计》实验报告 2019-04-28
汇编语言——输入两位数比较大小 2019-04-28
JavaScript——易班优课YOOC课群在线测试自动答题解决方案(七)随机答案 2019-04-28
JavaScript——易班优课YOOC课群在线测试自动答题解决方案(八)功能面板 2019-04-28
JavaScript——易班优课YOOC课群在线测试自动答题解决方案(九)ID标签 2019-04-28
Vue + Element UI——滚动条el-scrollerbar和无限滚动指令v-infinite-scroll整合解决方案 2019-04-28
Vue + Element UI + Spring Boot——易班优课YOOC课群在线测试自动答题解决方案(十)问题管理页面 2019-04-28
Windows——桌面快捷键Ctrl+Z撤销的文件恢复解决方案 2019-04-28
JavaScript——易班优课YOOC课群在线测试禁止查卷解决方案 2019-04-28