傳統「完整備份 + 日誌重放」模式在交易密集型系統表現良好,但面對「數據量龐大、變更頻率低」的數據倉庫或多媒體應用(大量 LOB 不記錄日誌)時,備份窗口過長、儲存浪費嚴重。DB2 9.5 引入增量備份,僅備份「上次備份後變更的頁面」,大幅縮減備份時間與體積。
DB2 透過 TRACKMOD 參數啟用頁面修改追蹤:
TRACKMOD = NO(預設):不追蹤,無法進行增量備份。TRACKMOD = YES:啟用追蹤,首次連接資料庫後生效。前提:必須先完成一次完整備份作為基準點。-- 啟用範例
DB2 UPDATE DATABASE CONFIGURATION FOR SAMPLE USING TRACKMOD YES
新增表空間後,必須對該表空間(或整庫)執行一次備份,後續增量備份才會包含該表空間。
| 模式 | 關鍵字 | 備份範圍 | 類比 Oracle |
|---|---|---|---|
| 累積增量 | INCREMENTAL |
距離最近一次完整備份後所有變更頁 | Cumulative Incremental |
| 差異增量 | INCREMENTAL DELTA |
距離最近一次任意備份(完整/累積/差異)後所有變更頁 | Differential Incremental |
-- 累積增量備份
DB2 BACKUP DB SAMPLE ONLINE INCREMENTAL USE TSM
-- 差異增量備份
DB2 BACKUP DB SAMPLE ONLINE INCREMENTAL DELTA USE TSM
恢復鏈條最多包含四類資源:
使用 INCREMENTAL AUTOMATIC 讓 DB2 自動判斷所需映像順序:
DB2 RESTORE DATABASE SAMPLE INCREMENTAL AUTOMATIC TAKEN AT (SAT)
亦可先用 db2ckrst 解析歷史檔,預覽建議恢復序列:
db2ckrst -d sample -t 20240101224424 -r database
注意:隨著週期推進,累積增量體積會逐漸增大(週六約含 6 天變更),可定期插入新的完整備份重設基準點。
同樣支援表空間粒度:
DB2 BACKUP DB SAMPLE TABLESPACE (TBSP1, TBSP2) ONLINE INCREMENTAL USE TSM
前提:資料庫需啟用歸檔日誌與 TRACKMOD=YES,且該表空間已有完整備份基準。
掌握 TRACKMOD、累積/差異模式、自動恢復與策略規劃,即能為 DB2 建立高效、彈性的增量備份體系。