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

降低 DB2 DMS 表空間高水位標記 (HWM) 實戰:使用 DB2DART 工具定位與釋放空間

     編輯:DB2 教學

什麼是高水位標記 (HWM)?

DMS 表空間的 HWM 代表該表空間曾經使用的最大資料頁數。若 db2 list tablespaces show detail 顯示 已用頁數 < HWM,說明有未使用空間位於 HWM 之下,可透過降低 HWM 釋放容器空間給檔案系統。

降低 HWM 的三種途徑

  1. 重組表:reorg table tabname 可壓縮資料頁,可能降低 HWM。
  2. 匯出/刪除/重建/匯入:將持有 HWM 的表匯出,刪除表,重建後匯入,強制重新分配頁面。
  3. DB2DART 清理空間映射頁:移除已刪除資料對應的空間映射頁(/RHWM 選項)。

關鍵步驟:識別持有 HWM 的表

必須在 實例停止狀態 下執行:

db2dart db_name /DHWM /TSI tablespace_id

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

取得降低 HWM 的建議操作

db2dart db_name /LHWM /TSI tablespace_id /HWM target_page_count
  • target_page_count:期望降低到的頁數,設 0 表示由 DB2 自動降至最低。
  • 報告會建議對特定表採取何種操作(重組、匯出入等)以達成目標。

清理殘留空間映射頁

db2dart db_name /RHWM /TSI tablespace_id

針對已刪除資料但未釋放的空間映射頁進行清理,輔助降低 HWM。

操作流程總結

  1. db2stop 停止實例。
  2. 執行 /DHWM 定位持有 HWM 的表。
  3. 執行 /LHWM 獲取具體建議。
  4. 依建議執行重組或匯出入操作(需重新啟動實例)。
  5. 視情況執行 /RHWM 清理映射頁。
  6. db2start 啟動實例,用 list tablespaces show detail 驗證 HWM 是否下降。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved