Skip to end of metadata
Go to start of metadata

Overview

Overview about Oracle DBV command, purpose and usage. DBV stands for Oracle DBVerify

General Information

  • Use this only with combinations of ANALYZE (+ RMAN is optional)
  • OFFLINE tool, Oracle database must not be opened for the check
  • In case the database is OPEN while DBV is running, it might shows blocks corrupted that are currentl modified by Oracle, so the check has to be repeated OFFLINE, to double-check the result
  • No logfile is written unless option LOGFILE is specified
  • In case DBV is executed from within BRBACKUP, output is only written in case corruption has been found

What IS checked by DBV

  • Oracle Blocks
  • Consistency check within the Block
  • Oracle Data files
  • LOB Data (within the datafile)
  • UNDO Segment (within the datafile)
  • Corruption in Free Space (within the datafile)

What IS NOT checked by DBV

  • Crossreferences between tables and indexes
  • Redo Logs
  • Archived Redo Logs
  • Control File
  • Parameter File (PFILE,SPFILE)
  • Oracle Wallet File
  • RMAN Backup File

Checking a single object

  1. Check a single data file:
    OS> dbv FILE=<data_file> FEEDBACK=100 LOGFILE=<logfile_location> 
     
  2.  Check a single segment:
    OS> dbv userid=<schema_owner/password> segment_id= <tablespace_id>.<header_file>.<header_block>
     
        Use below statement to find out <tablespace_id>,<header_file> and <header_block>
     
    SQL> select tablespace_name,tablespace_id,header_file,header_block from sys.sys_user_segs where segment_name = '<segment_name>';
     
  3. Generate command for all data files
    SQL> set linesize 200
    SQL> set pagesize 0
    SQL> select 'DBV file='||name||' blocksize='||block_size ||' logfile=DBV_LOG_TS_'||ts#||'-FILE_'||file#||'.txt' from v$datafile;

Checking the entire database

  1. OS> brbackup -w only_dbv -c -t offline -m all -e <degree of parallel processing> 
     
    CAUTION:  For the DBV run using brbackup, it must be possible to launch and open the database without problems.
    brbackup does this in order to obtain the full paths for the data files to be checked.
    This also occurs if the OFFLINE check mode is selected. If the database cannot be opened due to a problem, you must launch the DBV manually.
     
  2. OS> brbackup -w only_dbv -c -t online -m all -e <degree of parallel processing>

 

Understanding the output

DBVERIFY: Release 12.1.0.2.0 - Production on Tue Jan 12 13:57:01 2016 
Copyright (c) 1982, 2014, Oracle and/or its affiliates.  All rights reserved. 
DBVERIFY - Verification starting : FILE = /oracle/OL1/sapdata4/sr3usr_1/sr3usr.data1
............................................................................. 
DBVERIFY - Verification complete 
Total Pages Examined         : 7680
Total Pages Processed (Data) : 1065
Total Pages Failing   (Data) : 0
Total Pages Processed (Index): 205
Total Pages Failing   (Index): 0
Total Pages Processed (Lob)  : 2
Total Pages Failing   (Lob)  : 0
Total Pages Processed (Other): 397
Total Pages Processed (Seg)  : 0
Total Pages Failing   (Seg)  : 0
Total Pages Empty            : 6011
Total Pages Marked Corrupt   : 0
Total Pages Influx           : 0
Total Pages Encrypted        : 0
Highest block SCN            : 34426783 (0.34426783)

As long as the lines marked with bold and underline are showing 0 (zero), there is no corruption found by DBV!

Navigating to other Chapters

General Information

Detecting Corrupted Blocks

Consistency Check with 'ANALYZE' command

Consistency Check with RMAN

Consistency Check with Data Pump

Which object is stored in the corrupted block(s)

Checks found corrupted blocks. What to do now