Backup And Recovery User's Guide-建立和更新增量備份-增量更新備份:基本例項

LuiseDalian發表於2014-02-25

增量更新備份:基本例項

為了建立在增量更新備份策略中使用的增量備份,使用BACKUP …FOR RECOVER OF COPY WITH TAG

下面的指令碼,定期執行,是實現基於增量更新備份所需要的全部程式碼。

RUN

{

  RECOVER COPY OF DATABASE WITH TAG 'incr_update';

  BACKUP INCREMENTAL LEVEL 1 FOR RECOVER OF COPY WITH TAG 'incr_update' DATABASE;

}

 

為了理解這個指令碼和策略,必須理解當沒有資料檔案拷貝或增量備份存在的時候,這2個命令的效果:

n  指令碼中的BACKUP命令不總是建立level 1增量備份

n  指令碼中的RECOVER命令會使RMAN應用任何可用的、具有指定標籤的level 1增量備份到具有相同標籤的資料檔案的集合上。

 

下表顯示了從星期一開始,每天執行一次,這個指令碼的效果

命令

星期一

星期二

星期三

星期四

RECOVER

因為沒有增量備份或資料檔案拷貝存在,這個命令產生一個訊息(不是一個錯誤),即這個命令沒有效果。

一個資料庫拷貝存在,沒有level 1增量備份存在用於恢復,因此RECOVER命令沒有效果。

在星期二做的level 1增量備份應用到資料庫拷貝上,使拷貝前進到這個level 1增量備份的檢查點SCN

昨天做的level 1增量備份應用到資料庫拷貝上, 使拷貝前進到這個level 1增量備份的檢查點SCN

BACKUP

沒有level 0映象拷貝存在,建立一個資料庫映象拷貝,標籤為incr_update。為了開始增量更新的迴圈,這個拷貝是必要的。

注意:如果指令碼中設定DEVICE TYPE sbt,則第一次執行會在磁碟上建立備份,而不是在磁帶上,後續的執行會在磁帶上進行level 1備份。

產生一個level 1增量備份,標籤為incr_update.

這個備份包含在週一和週二之間改變的資料塊

產生一個level 1增量備份,標籤為incr_update.

這個備份包含在週二和週三之間改變的資料塊

產生一個level 1增量備份,標籤為incr_update.

這個備份包含當前和最近的具有incr_update標籤的備份之間的改變。

 

注意下面的細節

n  每當資料檔案被新增到資料庫,則在指令碼下一次執行的時候,這個新檔案的映象拷貝會被建立。

指令碼的下次執行會為新增的檔案第一次產生level 1增量備份。

在所有後序的執行,新新增的檔案就和其它檔案一樣處理了。

n  你必須使用標籤來識別在這個策略中的資料檔案的拷貝和增量備份,這樣就不會與其它的備份策略相混淆。

如果你使用多個增量備份策略,則RMAN不能明確地建立level 1增量備份,除非給level 0備份指定了標籤。

應用到這些映象的level 1增量備份是基於資料檔案映象拷貝的標籤和可用的level 1增量備份來選擇的。

在選擇level增量備份的時候標籤非常重要。

n  在指令碼第3次執行之後,下面的檔案對於基於時間點的恢復是可用的。

u  資料庫的映象拷貝,從指令碼上一次執行的檢查點SCN開始。

u  一個增量備份,包含上一次執行的檢查點SCN之後的改變。

u  歸檔重做日誌,包含在映象拷貝的檢查點SCN和當前時間之間的所有改變。

如果必須還原和恢復資料庫在接下來的24小時期間,則可以從增量更新資料檔案拷貝來還原資料檔案。

然後從最近的level 1增量備份和重做日誌應用改變來達到希望的時間點。

最多應用24小時的redo資料,這就限制了完成基於時間點的恢復需要的時間。

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

相關文章