【新炬網路名師大講堂】物理一致性和邏輯一致性檢查(DBV,rman)

shsnchyw發表於2014-12-26
物理一致性和邏輯一致性檢查

DBV工具
特點:只讀,不會做修改
          可以線上檢查,不需要關閉資料庫。
          不能檢查控制檔案和日誌檔案,而只能檢查資料檔案
          可以檢查ASM檔案,但資料庫必須open,需要透過USERID指定使用者
          比如dbv file=+DG1/ORCL/datafile/system01.dbf userid=system/sys

在許多UNIX平臺下,DBV要求資料檔案有副檔名。如果沒有(裸裝置)可以透過建立連結,然後對連結檔案進行操作,比如:ln -s /dev/rdsk/mydevice /tmp/mydevice.dbf

某些平臺下,DBV工具不能檢查超過2GB的檔案,如果碰到DBV-100錯誤,請先檢查檔案大小,Metalink Bug 710888 對這個問題有描述。

可直接輸入dbv 獲取幫助
BLOCKSIZE,要與檢查的檔案的blocksize一致。預設8192
SEGMENT_ID,可以指定要檢查的段
例子1、檢查users01.dbf
[oracle@Rhel5 ~]$ dbv file=/u01/oradata/10G101/users01.dbf blocksize=8192
                            file要輸入絕對路徑,否則可能會報dbv-600錯誤
DBVERIFY: Release 10.2.0.5.0 - Production on Mon Aug 5 23:34:28 2013

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

DBVERIFY - Verification starting : FILE = /u01/oradata/10G101/system01.dbf
Page 28618 is marked corrupt
Corrupt block relative dba: 0x00406fca (file 1, block 28618)
Bad check value found during dbv:
Data in bad block:
type: 6 format: 2 rdba: 0x00406fca
last change scn: 0x0000.00029ab9 seq: 0x1 flg: 0x04
spare1: 0x0 spare2: 0x0 spare3: 0x0
consistency value in tail: 0x9ab90601
check value in block header: 0xc694
computed block checksum: 0x7400


DBVERIFY - Verification complete

Total Pages Examined         : 57600
Total Pages Processed (Data) : 38088
Total Pages Failing   (Data) : 0
Total Pages Processed (Index): 7049
Total Pages Failing   (Index): 0
Total Pages Processed (Other): 1867
Total Pages Processed (Seg)  : 1
Total Pages Failing   (Seg)  : 0
Total Pages Empty            : 10595
Total Pages Marked Corrupt   : 1
Total Pages Influx           : 0
Highest block SCN            : 676674 (0.676674)


例子2、檢查segment TEST
檢視物件的tsn、segfile、segblock
SQL> select t.ts#,s.header_file,s.header_block
 from v$tablespace t,dba_segments s
 where s.segment_name='TEST
 and t.name=s.tablespace_name;

   TS#     HEADER_FILE   HEADER_BLOCK
----------    -----------           ------------
     0            1                      56377

[oracle@Rhel5 10G101]$ dbv userid=system/password segment_id=0.1.56377
DBVERIFY: Release 10.2.0.5.0 - Production on Mon Aug 5 23:03:54 2013

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

DBVERIFY - Verification starting : SEGMENT_ID = 0.1.56377


DBVERIFY - Verification complete

Total Pages Examined         : 2
Total Pages Processed (Data) : 1
Total Pages Failing   (Data) : 0
Total Pages Processed (Index): 0
Total Pages Failing   (Index): 0
Total Pages Processed (Other): 0
Total Pages Processed (Seg)  : 1s
Total Pages Failing   (Seg)  : 0
Total Pages Empty            : 0
Total Pages Marked Corrupt   : 1
Total Pages Influx           : 0 
Highest block SCN            : 666485 (0.666485)


也可以使用RMAN工具來確認位置
RMAN> backup check logical validate datafile 1;
結果查詢:
SQL> select file#,block#,blocks from v$database_block_corruption;

     FILE#     BLOCK#       BLOCKS
---------- ----------            ----------
     1       28618                 1

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29960155/viewspace-1380973/,如需轉載,請註明出處,否則將追究法律責任。

相關文章