This great command line utility to check file level or segment level corruption:
This example for datafile level check:
dbv userid=bert/bert file=D:\Oracle\oradata\ORDB1\ABC.DBF blocksize=4096
Segment level check:
dbv userid=bert/bert segment_id=4.1024.10278
to find above information about segment run following query:
select tablespace_name, segment_name, TABLESPACE_ID, HEADER_FILE, HEADER_BLOCK
This example for datafile level check:
dbv userid=bert/bert file=D:\Oracle\oradata\ORDB1\ABC.DBF blocksize=4096
Segment level check:
dbv userid=bert/bert segment_id=4.1024.10278
from sys.sys_user_segs
where tablespace_name='ABC' and SEGMENT_NAME like 'XYZ%';
TABLESPACE_NAME SEGMENT_NAME TABLESPACE_ID HEADER_FILE HEADER_BLOCK
---------------- ---------------- ------------- ----------- -----------------------------------------------
ABC XYZ 4 1024 10278
ABC XYZ2 4 1024 10534
Block corruption can also be detected by querying the v$database_block_corruption dynamic performance view. To repair block corruption, the dbms_repair package can be used with Oracle 11g.
No comments:
Post a Comment