DB2 V9聯機備份還原(一)

rheet1978發表於2008-07-01

 

DB2使用聯機備份的備份映像還原資料庫,還原完成時需要進行前滾恢復,如果前滾所需的日誌檔案損壞或著被刪除,將不能完成前滾恢復,資料庫將不可用。DB2 V9在做聯機備份時新增了INCLUDE LOGS選項,當指定此選項時,BACKUP實用程式將截斷當前活動日誌檔案並將必要的日誌擴充套件資料塊集合複製到備份映像中。

 

由於聯機備份時包含日誌檔案的方式在還原資料庫時和以往有了很大不同,所以本文將對此進行詳細的闡述,並通過實際的例子來幫助大家理解和提高。

 

簡介      

實際從DB2 V8.2就已經在聯機備份時使用INCLUDE LOGS選項。在進行聯機備份操作時,可以在BACKUP DATABASE命令中指定INCLUDE LOGS選項。當指定此選項時,BACKUP 實用程式將截斷當前活動日誌檔案並將必要的日誌擴充套件資料塊集合複製到備份映像中。也就是說,備份映像中包含復原和恢復資料庫所需的日誌檔案,不再需要單獨的日誌檔案。資料庫自己決定需要哪些日誌檔案來保證聯機備份的一致性,並放到備份映像中,這為成功恢復提供了保證,以防止所需的日誌檔案損壞或被誤刪除。

還原時,通過使用RESTORE DATABASE命令的LOGTARGET選項,可以指定把備份映像中的日誌檔案放到什麼位置。如果指定了LOGTARGET選項,在執行RESTORE DATABASE命令時,DB2將把日誌檔案放到指定的路徑中,如果目標路徑中已經存在同名的日誌檔案,復原操作將失敗並返回一個錯誤。如果未指定LOGTARGET選項,則不會從備份映像中還原任何日誌檔案。

如果指定了LOGTARGET選項,但是備份映像中沒有包含任何日誌檔案,則在嘗試復原操作時會返回一個錯誤。如果指定了無效或只讀的路徑,復原操作會報SQL2581N錯誤。在指定LOGTARGET選項條件下 ,復原資料庫或表空間的過程中,如果不能抽取一個或多個日誌檔案,則復原操作失敗並返回錯誤。還可以選擇只復原儲存在備份映像中的日誌檔案。要執行此操作,可使用RESTORE DATABASE命令的LOGTARGET選項指定LOGS選項。以此方式復原日誌檔案時,如果復原操作遇到任何問題,則復原操作失敗並返回錯誤。

由於聯機備份時包含日誌檔案的方式在還原資料庫時和以往有了很大不同,另外,DB2日誌相關的一些引數也發生了變更,所以本文將對此進行詳細的闡述,並通過實際的例子來幫助大家理解和提高。

 

       我們將按照下列順序介紹聯機備份還原:

1.         建立示例資料庫DB2TEST1,並把日誌改成歸檔模式,並介紹一下DB2 V9新增的配置引數LOGARCHMETH1。建立示例表TEST1,並插入兩條記錄。

2.         聯機全量備份資料庫DB2TEST1,主要講解一下備份命令的語法以及注意事項並實際演示一下如何聯機全量備份資料庫DB2TEST1,備份期間對示例表TEST1插入一條記錄。

3.         使用聯機全量備份映像恢復示例資料庫DB2TEST1,並前滾恢復到日誌末尾。

4.         修改示例資料庫DB2TEST1配置引數TRACHMOD,使其允許跟蹤資料庫的更新。

5.         在增量模式下聯機備份資料庫:對示例表TEST1再次插入2條記錄,並對示例資料庫DB2TEST1進行聯機備份;對示例表TEST1再插入兩條記錄,對示例資料庫DB2TEST1進行聯機增量備份;對示例表TEST1再插入兩條記錄,對示例資料庫DB2TEST1進行聯機差異備份。

6.         手工增量復原示例資料庫DB2TEST1

7.         自動增量復原示例資料庫DB2TEST1

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

相關文章