Oracle之差異增量備份與累積增量備份

hky87發表於2009-12-17
1.概念
差異增量備份自上級及同級備份以來所有更改過的塊。
累積增量備份自上級備份以來所有更改過的塊。

因為累積增量是備份上級備份以來所有更改過的資料塊,所以累積增量備份需要更多的備份時間及較少的恢復時間;差異備份則相反,它可以備份同級備份以來更改過的資料塊。所以會減少備份時間,但在恢復時需要更多的時間。

差異增量備份更快,會寫出更少的塊,產生更小的備份檔案。備份過程更快,但在恢復時,RMAN必須過濾並應用每個增量備份。累積增量備份則相反。

Oracle 9中增量備份需要掃描整個資料庫的資料塊才能知道哪些資料塊發生了變化變化,這是一個代價很大,時將很長的過程,而且由於增量備份形成多個不同的備份集,使恢復變得更加不可靠,所以增量備份在版本9中不被推薦使用;在10g中,增量備份作了很大的改進,不需要掃描所有資料塊就能得知哪些資料塊發生變化,從而大大提升備份效率。但這些卻以犧牲磁碟I/O為代價,所以在OLTP事務系統中還得衡量是否願意以I/O為代價來保證安全及高可用性。10g還支援增量合併,增量備份可支援7級增量。

小插一段:關於Block change tracking

Block Change TrackingOracle 10g的一個新特性,Block Change Tracking程式記錄自從上一次備份以來資料塊的變化,並把這些資訊記錄在跟蹤檔案中。RMAN使用這個檔案判斷增量備份中需要備份的變更資料。這極大的促進了備份效能,RMAN可以不再掃毛整個檔案以查詢變更資料。

為此,Oracle引入了一個新的後臺程式,CTWRChange Tracking Writer),用於記錄變化的塊並將變化寫入相應的日誌檔案中。

啟用跟蹤:
alter database enable block change tracking using
file 'D:\oracle\product\10.2.0\flash_recovery_area\block_tracking.log'
--如果是採用OMF檔案管理方式,則不需要新增using file子句。

查詢當前設定:select filename,status,bytes from v$block_change_tracking;

關閉跟蹤:alter database
disable block change tracking;
2.備份策略及恢復
RMAN多級增量備份作為備份策略例子:

增量備份都需要一個0級備份來作為基礎,0級備份與全備份的區別在於0級可以用來增量恢復,而全備份則不可以。

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

相關文章