啟用 LOGRETAIN=ON(或新版 logarchmeth1)後,資料庫進入「前滾恢復」模式,活動日誌目錄將累積大量**聯機存檔日誌**,若不及時歸檔會佔滿磁碟導致資料庫掛起。本文系統梳理日誌生命週期、歸檔策略與 USEREXIT 自動化部署全流程。
| 模式 | 優點 | 缺點 | 適用場景 |
|---|---|---|---|
| 手工 Copy | 簡單、可控 | 易遺漏、人力成本高、無法保證 RPO | 測試/極小型庫 |
| USEREXIT | 自動化、可擴展、支援 TSM/磁帶/磁碟/XBSA | 需編譯 C 代碼、維護成本 | 生產環境標準選擇 |
| logarchmeth1/2 (V9.5+) | 原生參數化、無需編譯、支援 TSM/磁碟/供應商庫 | 舊版本不支援 | 新版本首選 |
| 樣本檔 | 歸檔介質 | 適用場景 |
|---|---|---|
| db2uext2.ctsm | Tivoli Storage Manager | 企業級備份整合 |
| db2uext2.ctape | 磁帶庫 | 長期離線存檔 |
| db2uext2.cdisk | 磁碟 (OS COPY) | 中小型、NAS/SAN 掛載 |
| db2uext2.cxbsa | XBSA 介面 | 第三方備份軟體(僅 AIX) |
DB2 9.5+ 建議直接使用 logarchmeth1 / logarchmeth2:
# 磁碟歸檔
db2 update db cfg using logarchmeth1 'DISK:/mnt/archive_logs'
# TSM 歸檔
db2 update db cfg using logarchmeth1 'TSM: {management_class}'
# 雙路歸檔(高可用)
db2 update db cfg using logarchmeth1 'DISK:/mnt/primary' logarchmeth2 'TSM:MC_STANDARD'
無需編譯、支援壓縮/加密、自動清理聯機日誌,強烈推薦新建庫採用。
db2pd -logs 檢查 First Active Log 與 Current Log 差距。日誌歸檔是 DB2 可恢復性的基石。舊版採 USEREXIT 靈活但維護重;新版原生參數化更簡潔高效。無論哪種方式,「自動化、雙路備份、定期演練恢復」是不變的鐵律。