block corruption type

warehouse發表於2010-08-07
Type of block corruption in the datafile:
  • ALL ZERO - Block header on disk contained only zeros. The block may be valid if it was never filled and if it is in an Oracle7 file. The buffer will be reformatted to the Oracle8 standard for an empty block.

  • FRACTURED - Block header looks reasonable, but the front and back of the block are different versions.

  • CHECKSUM - optional check value shows that the block is not self-consistent. It is impossible to determine exactly why the check value fails, but it probably fails because sectors in the middle of the block are from different versions.

  • CORRUPT - Block is wrongly identified or is not a data block (for example, the data block address is missing)

  • LOGICAL - Specifies the range is for logically corrupt blocks. CORRUPTION_CHANGE# will have a nonzero value.

[@more@]

SQL> desc v$database_block_corruption
名稱 是否為空? 型別
----------------------------------------- -------- ----------------------------

FILE# NUMBER
BLOCK# NUMBER
BLOCKS NUMBER
CORRUPTION_CHANGE# NUMBER
CORRUPTION_TYPE VARCHAR2(9)

SQL> select * from v$database_block_corruption;

FILE# BLOCK# BLOCKS CORRUPTION_CHANGE# CORRUPTIO
---------- ---------- ---------- ------------------ ---------
2 315 1 0 CHECKSUM
2 240 1 0 CORRUPT
2 239 1 0 FRACTURED
2 455 1 0 CHECKSUM

SQL>

模擬block corruption無意中編輯了block 239的tail和block240的header,結果很容易的看到了block corruption typy裡面的CORRUPT和FRACTURED,通常我們可以非常容易的看到CHECKSUM

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

相關文章