以下的文章主要描述的是DB2實施備份時應作的事項,我們說的是單純DB2數據庫的備份,如果想要雙機實時熱備份得用它專門的軟件才行,一般的情況下用的都是backup命令,以下就是具體方案的描述,希望在你今後的學習中會有所幫助。
包括DB2 backup database 數據庫名和DB2 restore database 數據庫名以下是常用操作命令DB2離線和在線全備、增量DB2實施備份及恢復的操作步驟:
1、離線全備份
1)、首先確保沒有用戶使用DB2:
- $DB2 list applications for db sample
2)、停掉數據庫並重新啟動,以便斷掉所有連接: DB2stop force
- DB2start
3)、執行備份命令:使用TSM作為DB2實施備份的介質) DB2 backup db sample use tsm
備份成功,將會返回一個時間戳。
4)、檢查備份成功: DB2 list history backup all for sample ,可以看到多了這個備份的紀錄。 DB2adutl query命令也可以看到返回值。 5)、備注: 首先對主節點catalog表空間在的節點)執行備份命令,再對另外的節點也做這個操作。 2、 在線備份: 1)、首先打開一下支持在線備份的數據庫配置參數: DB2 update db cfg for sample
- using userexit on
啟用用戶出口
- DB2 update db cfg for sample using logretain on
啟用歸檔日志 DB2 update db cfg for sample using trackmod on
啟用增量備份功能 (需要各個Node都分別做設置)
開啟這些參數後,數據庫處於backup pending狀態,要求做數據庫的離線全備份。做一下離線全備份,參考上面的命令。
2)、在線備份命令如下:
- DB2 backup db sample online use tsm
備份成功,返回一個時間戳。
3)、同樣可以用DB2adutl 和DB2 list history察看備份紀錄。
4)、備注: 同樣,對每個節點都做這個操作。
3、 在線增量備份 1
)、在開啟了必須的三個參數的情況下,做增量備份:
- DB2 backup db sample online incremental use tsm
備份成功,返回一個時間戳。
2)、同樣可以用DB2adutl 和DB2 list history察看備份紀錄。
3)、還有一種delta的備份: DB2 backup db sample online incremental delta use tsm
這兩種備份的區別,類似Oracle Exports的Incremental和Cumulative方式,DB2的incremental對應oracle的cumulative方式,而DB2的delta方式則對應oracle的incremental方式。 4)、備注:同樣,對每個節點都做這個操作。
4、 恢復數據庫
1)、手工drop數據庫,模擬災難恢復的情況,執行如下操作: DB2 drop db sample
2)、恢復備份歷史紀錄每次backup,不論類型,都會備份歷史紀錄文件)。這裡的時間戳應該是最新的: DB2 restore db sample history file use tsm taken at 20030102223107 buffer 100
3)、使用DB2的恢復幫助工具: DB2ckrst -d sample -t 20030101224424 -r database 轉某作者