熱備份與RMAN備份中split block的處理

tolywang發表於2008-08-15

fractured block   (split block 定義) 
           A type of media corruption that can occur when database writer is writing a block at the same time an operating system utility is reading the block for backup. The block that the operating system reads can be split, that is, the top of the block is written at one point in time while the bottom of the block is written at another point in time. If you restore a file containing a fractured block and Oracle reads the block, then the block is considered a corrupt block.  

熱備份中split block的處理: 
              The potential for fractured blocks necessitates putting tablespaces in backup mode before user-managed online backups.   A database in backup mode writes whole Oracle data blocks to the redo log, so that if a block is split during the backup, you can repair it by using redo.

 

RMAN 中split block的處理:  

             Recovery Manager does not experience this problem because the server process performing the backup or copy reads each block to determine whether it is split and re-reads the block until it gets a consistent version.

由於熱備份是在begin backup 之後的OS 上的cp命令,所以在遭遇split block的時候,只能將整個block 寫入redo log . 以便後面能透過redo 來修復它(split block) 。 

RMAN備份處理split block與熱備份不一樣,它不存在這樣的問題,是因為它在執行備份每個資料塊的時候會判斷這個資料塊是否是split 的,如果是它會重新讀這個資料塊直到得到一個consistent version .

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

相關文章