首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> DB2 資料庫 >> DB2 教學

DB2 離線/線上完整備份、增量備份與恢復操作標準流程 (含 TSM 整合)

     編輯:DB2 教學

前置概念:三大備份模式

模式命令關鍵字前提條件適用場景
離線完整BACKUP DATABASE無連線、循環/歸檔日誌均可維護窗口、初始化備用庫
線上完整BACKUP DATABASE ONLINE啟用 LOGRETAIN=ON USEREXIT=ON TRACKMOD=ON7×24 系統、最小化停機
線上增量BACKUP DATABASE ONLINE INCREMENTAL同上 + 已有完整備份基準每日/每小時變更量小
線上增量差異BACKUP DATABASE ONLINE INCREMENTAL DELTA同上僅備份上次任意備份後變更 (對應 Oracle 增量)

關鍵差異:INCREMENTAL (累積) = 含上次完整備份後所有變更;DELTA (差異) = 僅含上次任意備份後變更。恢復時 INCREMENTAL 只需最後一份,DELTA 需逐份應用。

線上備份啟用三參數 (各分區均需設定)


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

設定後資料庫進入 **Backup Pending** 狀態,**必須先做一次離線完整備份** 才能進行線上備份。

標準操作流程 (以 TSM 為目標裝置)

1. 離線完整備份


# 1. 確認無連線
db2 list applications for db sample
# 2. 重啟斷連
db2stop force; db2start
# 3. 備份 (主節點優先,再其他節點)
db2 backup db sample use tsm
# 4. 驗證
db2 list history backup all for sample
db2adutl query

2. 線上完整備份


db2 backup db sample online use tsm
# 驗證同上

3. 線上增量/差異備份


db2 backup db sample online incremental use tsm
db2 backup db sample online incremental delta use tsm

4. 災難恢復標準流程 (模擬 Drop Database)

  1. 刪除資料庫:db2 drop db sample
  2. 還原歷史檔 (最新時間戳):
    db2 restore db sample history file use tsm taken at 20240102223107 buffer 100
  3. 查詢建議恢復鏈:
    db2ckrst -d sample -t 20240101224424 -r database
    輸出將列出需依序恢復的完整/增量映像及順序。
  4. 版本恢復 (主節點優先):
    db2 restore db sample incremental use tsm taken at 20240101224424 buffer 100
  5. 前滾恢復 (僅主節點執行):
    db2 rollforward db sample to 2024-01-12-13.27.25.000000 on all nodes and stop
    所有分區必須前滾至**同一時間點**。

進階補充

  • 表空間級備份/恢復:加 TABLESPACE (ts_name) 子句,同樣需歸檔日誌 + TRACKMOD。
  • 恢復鏈延續:若有更新的完整/增量映像,按 db2ckrst 建議順序依次恢復,最後再 ROLLFORWARD。
  • Online/Offline 恢復:恢復同樣分線上/離線模式,語意與備份對應。
  • 分區環境:所有備份/恢復命令需在**各分區分別執行** (或用 db2_all),前滾僅在目錄節點執行 ON ALL NODES。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved