暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

使用Oracle9i的blockrecover新特性修复数据库中的坏块

原创 eygle 2005-06-12
864
1.备份数据库


D:\\>rman target /
恢复管理器: 版本9.2.0.6.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
连接到目标数据库: EYGLE (DBID=1365961916)
RMAN> backup database format='d:\\oradata\\eygle_fullbk.bak' tag='eygle';
启动 backup 于 12-6月 -05
正在使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=13 devtype=DISK
通道 ORA_DISK_1: 正在启动 full 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
在备份集中包含当前的 SPFILE
备份集中包括当前控制文件
输入数据文件 fno=00001 name=D:\\ORADATA\\EYGLE\\SYSTEM01.DBF
输入数据文件 fno=00005 name=D:\\ORADATA\\EYGLE\\UNDOTBS2.DBF
输入数据文件 fno=00002 name=D:\\ORADATA\\EYGLE\\EYGLE01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 12-6月 -05
通道 ORA_DISK_1: 已完成段 1 于 12-6月 -05
段 handle=D:\\ORADATA\\EYGLE_FULLBK.BAK comment=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:27
完成 backup 于 12-6月 -05
RMAN> list backup;
备份集列表
===================
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
2 Full 140M DISK 00:00:22 12-6月 -05
BP 关键字: 1 状态: AVAILABLE 标记:TAG20050612T004442
段名:D:\\ORADATA\\EYGLE_FULL.BAK
包含的 SPFILE: 修改时间: 04-3月 -05
备份集 2 中的数据文件列表
文件 LV 类型 Ckp SCN Ckp 时间 名称
---- -- ---- ---------- ---------- ----
1 Full 452236 12-6月 -05 D:\\ORADATA\\EYGLE\\SYSTEM01.DBF
2 Full 452236 12-6月 -05 D:\\ORADATA\\EYGLE\\EYGLE01.DBF
5 Full 452236 12-6月 -05 D:\\ORADATA\\EYGLE\\UNDOTBS2.DBF
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
4 Full 140M DISK 00:00:21 12-6月 -05
BP 关键字: 2 状态: AVAILABLE 标记:EYGLE
段名:D:\\ORADATA\\EYGLE_FULLBK.BAK
包含的 SPFILE: 修改时间: 04-3月 -05
备份集 4 中的数据文件列表
文件 LV 类型 Ckp SCN Ckp 时间 名称
---- -- ---- ---------- ---------- ----
1 Full 492975 12-6月 -05 D:\\ORADATA\\EYGLE\\SYSTEM01.DBF
2 Full 492975 12-6月 -05 D:\\ORADATA\\EYGLE\\EYGLE01.DBF
5 Full 492975 12-6月 -05 D:\\ORADATA\\EYGLE\\UNDOTBS2.DBF
RMAN> exit
恢复管理器完成。


2.使用工具破坏数据块

可以使用UltraEdit或者WinHex打开文件修改某个数据块,然后保存。

3.访问损坏的数据


D:\\>sqlplus "/ as sysdba"
SQL*Plus: Release 9.2.0.6.0 - Production on 星期日 6月 12 09:06:19 2005
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
已连接到空闲例程。
09:06:19 SQL> startup
ORACLE 例程已经启动。
Total System Global Area 59842188 bytes
Fixed Size 454284 bytes
Variable Size 33554432 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
数据库已经打开。
09:06:33 SQL> select count(*)from t;
select count(*)from t
*
ERROR 位于第 1 行:
ORA-01578: ORACLE 数据块损坏(文件号2,块号14)
ORA-01110: 数据文件 2: 'D:\\ORADATA\\EYGLE\\EYGLE01.DBF'


此时alert_.log文件中会记录损坏块。


***
Corrupt block relative dba: 0x0080000e (file 2, block 14)
Bad check value found during buffer read
Data in bad block -
type: 6 format: 2 rdba: 0x0080000e
last change scn: 0x0000.00078584 seq: 0x1 flg: 0x06
consistency value in tail: 0x85840601
check value in block header: 0xca4b, computed block checksum: 0x5a6
spare1: 0x0, spare2: 0x0, spare3: 0x0
***
Reread of rdba: 0x0080000e (file 2, block 14) found same corrupted data


4.检查坏块

也可以使用RMAN验证数据文件,以发现坏块:


D:\\>rman target /
恢复管理器: 版本9.2.0.6.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
连接到目标数据库: EYGLE (DBID=1365961916)
RMAN> backup validate datafile 2;
启动 backup 于 12-6月 -05
正在使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=13 devtype=DISK
通道 ORA_DISK_1: 正在启动 full 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00002 name=D:\\ORADATA\\EYGLE\\EYGLE01.DBF
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 12-6月 -05
RMAN> exit
恢复管理器完成。


此时alert_.log文件中会记录RMAN发现的坏块信息:


***
Corrupt block relative dba: 0x0080000e (file 2, block 14)
Bad check value found during backing up datafile
Data in bad block -
type: 6 format: 2 rdba: 0x0080000e
last change scn: 0x0000.00078584 seq: 0x1 flg: 0x06
consistency value in tail: 0x85840601
check value in block header: 0xca4b, computed block checksum: 0x5a6
spare1: 0x0, spare2: 0x0, spare3: 0x0
***
Reread of blocknum=14, file=D:\\ORADATA\\EYGLE\\EYGLE01.DBF. found same corrupt data

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论