本文為ID 225692的精簡提煉版,聚焦可直接執行的調優動作清單,供DBA日常巡檢與應急調優快速參考。
db2 update dbm cfg using DFT_MON_BUFPOOL ON
db2 update dbm cfg using DFT_MON_TABLE ON
db2 update dbm cfg using DFT_MON_STMT ON
db2 update dbm cfg using DFT_MON_UOW ON
db2 update dbm cfg using DFT_MON_LOCK ON
db2 update dbm cfg using DFT_MON_SORT ON
db2 get snapshot for dynamic sql on DBNAME # 高消耗SQL
db2 get snapshot for tables on DBNAME # 熱點表
db2 get snapshot for bufferpools on DBNAME # 命中率
| 指標 | 健康閾值 | 異常動作 |
|---|---|---|
| 緩衝池命中率 | > 95% | 增大緩衡池、優化SQL、檢查預取 |
| 索引命中率 | > 98% | 同上 |
| 排序溢寫比 | < 5% | 增大SORTHEAP/SHEAPTHRES |
| 鎖等待時間 | < 10ms/次 | 優化索引、縮短事務、行級鎖 |
| 動態SQL平均耗時 | < 100ms | 分析TOP 10 SQL執行計劃 |
# 查看配置
SELECT * FROM SYSCAT.BUFFERPOOLS;
# 即時調整(配合STMM)
ALTER BUFFERPOOL BP_NAME IMMEDIATE SIZE NEW_SIZE AUTOMATIC;
# 實時監控
db2mtrk -i -d
# 時間窗口查詢
db2diag -time 2024-01-15.10.00.00:2024-01-15.10.30.00
# 錯誤關鍵詞過濾
db2diag -g "err|error|fail|severe|panic|crash|trap|abort"
db2advis建議、缺失索引、冗餘索引調優遵循監控→診斷→單變量調整→驗證→沉澱閉環。隨身攜帶此清單,巡檢時逐項核對,應急時按優先級執行。記住:**統計信息是優化器的眼睛,緩衝池是性能的心臟,日誌是故障的黑匣子。**