Oracle 工具之DBVERIFY使用 验证备份是否有效

Oracle 工具之DBVERIFY使用 验证备份是否有效

通过dbverify验证Oracle数据文件坏块

 

 

DBVERIFY工具用来验证数据文件的物理结构, 包括数据文件是否损坏, 是否存在逻辑坏块, 以及数据文件中包含何种类型的数据.  可以验证ONLINE或OFFLINE的数据文件. 不管数据库是否打开, 都可以访问数据文件.


 

 

1.1  dbv 用法


$ dbv    或者window c:>dbv  help=y

 

DBVERIFY: Release 10.2.0.4.0 - Production on Fri Mar 19 14:41:52 2010

 

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

 

Keyword     Description                    (Default)

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

FILE        File to Verify                 (NONE)

START       Start Block                    (First Block of File)

END         End Block                      (Last Block of File)

BLOCKSIZE   Logical Block Size             (8192)

LOGFILE     Output Log                     (NONE)

FEEDBACK    Display Progress               (0)

PARFILE     Parameter File                 (NONE)

USERID      Username/Password              (NONE)

SEGMENT_ID  Segment ID (tsn.relfile.block) (NONE)

HIGH_SCN    Highest Block SCN To Verify    (NONE)

            (scn_wrap.scn_base OR scn)           

            

1.2  最简单例子


$ dbv file=/u01/oradata/YTSTD2/ts_test.dbf

 

DBVERIFY: Release 10.2.0.4.0 - Production on Fri Mar 19 15:09:54 2010

 

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

 

DBVERIFY - Verification starting : FILE = /u01/oradata/YTSTD2/ts_test.dbf

 

 

DBVERIFY - Verification complete

 

Total Pages Examined         : 1280

Total Pages Processed (Data) : 1

Total Pages Failing   (Data) : 0

Total Pages Processed (Index): 0

Total Pages Failing   (Index): 0

Total Pages Processed (Other): 11

Total Pages Processed (Seg)  : 0

Total Pages Failing   (Seg)  : 0

Total Pages Empty            : 1268

Total Pages Marked Corrupt   : 0

Total Pages Influx           : 0

Highest block SCN            : 2489181293 (1.2489181293)

 

dbverify给出的结果包括数据文件包括的Pages数量(即BLOCKS), 其中包括多少个数据块, 多少个索引块, 多少空块, 多少个已经被标志为坏块的块, 多少个坏块.


 

 

1.3  验证指定段的用法


DBV工具还有一种在数据库打开的情况下使用的, 验证指定段的用法 .

这种方法需要查询表空间ID,段头所在的数据文件ID和以及段头所在块ID, 要获取这个信息可以通过SYS用户查询SYS_DBA_SEGS视图. 需要注意的是, Oracle文档给出的SYS_USER_SEGS视图只能查询SYS用户的段, 要查询普通用户的段信息, 需要访问SYS_DBA_SEGS. 

 

SQL>  SELECT TABLESPACE_ID, HEADER_FILE, HEADER_BLOCK FROM SYS_DBA_SEGS WHERE SEGMENT_NAME = 'LOG_RECORD_DETAIL_4_BAK';

TABLESPACE_ID HEADER_FILE HEADER_BLOCK

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

           11           9      3114355

           11           9      3114363

           11           9      3254683

...

            

dbv执行时 需要指定userid(需sysdba权限), 这种方式要求数据库处于打开的状态. 

 

$ dbv userid=u_test/" xxx " segment_id=11.9.3114355

 

DBVERIFY: Release 10.2.0.4.0 - Production on Fri Mar 19 15:21:05 2010

 

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

 

DBVERIFY - Verification starting : SEGMENT_ID = 11.9.3114355

 

 

DBVERIFY - Verification complete

 

Total Pages Examined         : 3

Total Pages Processed (Data) : 0

Total Pages Failing   (Data) : 0

Total Pages Processed (Index): 0

Total Pages Failing   (Index): 0

Total Pages Processed (Other): 2

Total Pages Processed (Seg)  : 1

Total Pages Failing   (Seg)  : 0

Total Pages Empty            : 0

Total Pages Marked Corrupt   : 0

Total Pages Influx           : 0

Highest block SCN            : 0 (0.0)


 

 

1.4  验证ASM磁盘 的用法


如果是验证ASM磁盘, 那么需要指定userid(需sysdba权限), 因为此时需要登陆Oracle数据库来访问ASM磁盘 .

$ dbv file='+DATA1/bi/datafile/estaging_user01.1193.708261065' userid=u_test/"xxx" feedback=100

$ dbv file='+DATA1/bi/datafile/estaging_user01.1193.708261065' userid=u_test/"xxx" start=3496673 end=3496673


 

 

1.5  验证 数据文件拷贝 的用法


由于dbv可以在实例关闭情况下验证数据文件, 因此dbv也可以验证数据文件的拷贝. 这个拷贝指的是通过RMAN的COPY命令或者操作系统命令cp拷贝的数据文件, 而不是RMAN生成的备份集格式. 

rman target /

RMAN> run

{

copy datafile 'E:\ORACLE\ORADATA\YTK92\USERS01.DBF' to 'e:\userbak.dbf';

}

RMAN> exit

$ dbv file=e:\userbak.dbf


 

 

1.6  注意


对于DBVERIFY工具, 高版本可以自动识别低版本数据库, 比如11g的dbv访问9i的数据库, 但是低版本的dbv访问高版本会报错.

相关参看:http://hi.baidu.com/xu521huan/blog/item/caf36f458b30c52ccffca3b8.html

http://yangtingkun.itpub.net/post/468/481114

http://hi.baidu.com/bystander1983/blog/item/411afd09b3cfb039e824885d.html

http://www.ordba.net/Tutorials/OracleUtilities~DBVERIFY.htm
 

--End--


 

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年11月    »
123
45678910
11121314151617
18192021222324
252627282930
搜索
标签列表
网站分类
最新留言
    文章归档
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.闽ICP备11018667号-2