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

降低 DB2 DMS 表空間高水位標記 (HWM) 實戰指南

     編輯:DB2 教學

什麼是高水位標記 (HWM)

DMS 表空間的 HWM 代表「曾經使用到的最大資料頁號」。執行:

db2 list tablespaces show detail

若 Used pages < High water mark,表示有空間可回收。

降低 HWM 兩大常規手段

  1. REORG 表:db2 reorg table schema.tab — 整理資料頁,自然下移 HWM。
  2. 匯出/刪除/重建/匯入:針對無法 REORG 的大表,匯出資料 → DROP TABLE → CREATE TABLE → 匯入,HWM 歸零。

關鍵:定位持有 HWM 的表

必須在 實例停止狀態 下使用 DB2DART:

db2dart <db> /DHWM <tablespace_id>

產生的報告中會列出持有 HWM 的表名與頁號。

取得降低 HWM 建議操作

db2dart <db> /LHWM <tablespace_id> <target_pages>
  • target_pages:期望降低至的頁數,0 表示降至理論最小值。
  • 報告會建議對哪個表執行 REORG 或重建。

移除多餘空間映射頁 (/RHWM)

db2dart <db> /RHWM <tablespace_id>

清理已刪除資料殘留的空間映射頁,進一步降低 HWM。

操作流程總結

  1. db2stop 停止實例
  2. db2dart db /DHWM ts_id 找出目標表
  3. db2dart db /LHWM ts_id 0 取得建議
  4. 依建議執行 REORG 或 重建表
  5. db2dart db /RHWM ts_id 清理映射頁
  6. db2start 啟動實例
  7. db2 list tablespaces show detail 驗證 HWM 已降低

注意事項

  • DB2DART 需離線執行,請安排維護窗口。
  • 大表 REORG 需足夠臨時空間,建議先 RUNSTATS 確認統計資訊。
  • 定期監控 HWM,避免表空間無法縮減導致磁碟浪費。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved