◀ 6.

Db2の表スペース容量確認|MON_GET_TABLESPACEと拡張の前提

▶

Db2の記事として修復しました。Db2 LUWの表スペース容量を確認し、管理方式を特定してから拡張を計画します。OracleのDBA_DATA_FILESやALTER DATABASE DATAFILEの解説ではありません。容量を調べることと、コンテナーを変更することは別作業です。

Db2で対象と現在値を確認し、変更の前提と検証を分ける図

この記事の要点
  • DB2 のテーブルスペース容量確認と拡張方法
  • 旧CLPの容量確認例を保持。現在の確認例は下のMON_GET_TABLESPACEを参照
  • 旧見出し/コードにはコマンド名の誤記があるため、各節の注意を確認
  • 拡張はDMS/SMS/自動ストレージ等の管理方式と既存設定を先に確認する

 

本稿はDB2のテーブルスペースの容量の確認および拡張方法について説明します。

 

容量確認の構文

次は旧CLP例です。LIST TABLESPACES系は非推奨で、IBMはMON_GET_TABLESPACE/MON_GET_CONTAINERを案内しています。SHOW DETAILはpending free extentsの解放を試みるため、純粋に何も作用しない表示と扱いません。接続中DBとpartition/member、実行権限を確認し、新しい監視例も参照してください。

list tablespaces show detail

 

データファイル名確認の構文

下のlist tablespaces containersは誤記を含む旧例です。正規の旧CLP名はLIST TABLESPACE CONTAINERS FORで、TABLESPACEは単数形です。ただしこのコマンドも非推奨です。TABLESPACE_IDは実際に照合したIDへ置き換える前提で、出力にはファイルだけでなく管理方式に応じたコンテナーがあり得ます。

list tablespaces containers for TABLESPACE_ID

 

容量拡張の構文

以下は明示的なファイルコンテナー拡張の旧構文例で、管理方式が合わない環境へ実行しません。DMSのコンテナーサイズ変更と、自動ストレージ/ストレージグループの管理を分けます。未知のファイルパスを作成したり、Oracleのデータファイル操作を流用したりしません。

alter tablespace TABLESPACE_NAME extend (file 'ファイルパス' 容量)

EXTENDは追加する量、RESIZEは変更後の総サイズを指定する考え方で、同じ値でも意味が異なります。1024M等の単位は対象版で確認し、十進GBと二進GiBを混同しません。数値は推奨容量ではなく、現在の空き/増加傾向/最大値を見て計画します。

 

表スペースとmemberごとの監視情報

Db2 LUWの接続済みDBで実行するSQL例です。-2は全active memberを対象とし、集約済みの1行を意味しません。関数のEXECUTE等の必要権限は公式で確認し、取得のために全面的な管理権限を付けません。読み取りでも無負荷の保証ではありません。

SELECT MEMBER, TBSP_ID, TBSP_NAME, TBSP_PAGE_SIZE,
       TBSP_USED_PAGES, TBSP_USABLE_PAGES, TBSP_FREE_PAGES
FROM TABLE(SYSPROC.MON_GET_TABLESPACE(NULL, -2)) AS t
ORDER BY MEMBER, TBSP_ID;

TBSP_PAGE_SIZEは1ページのbytes、USED/USABLE/FREE_PAGESはページ数です。MiBへ換算するなら対象ページ数×ページサイズ÷1,048,576で、先に整数で割って切り捨てないよう注意します。使用率を計算する場合は同じmember/表スペースのUSABLEを分母にし、0/NULLを扱ってください。ページサイズが異なる行のページ数だけを合算してbytesと扱わないでください。

FREEとUSABLE−USEDの一致を常に前提にしません。再バランスやpending free等の状態・採取時点の差を考慮し、表スペース内の空きとOS/クラウド側の空き、縮小して回収できる容量を区別します。memberをまたぐ単純合計を業務データの実容量と即断しないでください。

拡張を判断する確認順

  1. Db2の版、表スペースID/名前、管理方式、storage groupとコンテナー、既存の自動拡張/上限設定を照合する。
  2. 容量の推移・増加速度・空き/最大値、OSファイルシステムや提供サービスの上限と監視時点を確認する。使用率80%等を全環境共通の障害判定にしない。
  3. 必要な変更方式・権限・可用性/バックアップ/復旧と検証先を決める。AUTORESIZEを有効にすれば物理領域の不足も解消するわけではない。
  4. 変更後も監視結果・実際の保存先・アプリ影響を確認する。容量確認だけの依頼でEXTEND/RESIZE/REBALANCEを実行しない。

アプリからの接続例はJdbcTemplate、登録先確認はDB一覧へ。今回の修復では本番のストレージ/表スペース/設定/権限は変更していません。

公式:MON_GET_TABLESPACE / 旧LIST TABLESPACESの作用と範囲 / ALTER TABLESPACE / 自動ストレージの拡張。

対象範囲と関連ページ

対象は主にDb2 LUWで、i/zOSや他製品へ無条件に転用しません。元のDb2版のコード・見出し・リンクを保持して訂正し、誤置換された版も履歴に保持しています。2026年10月に公式資料と照合しましたが、Db2実機での動作/権限/性能・全構成での変更成功を検証したものではありません。Db2親ページの子ページから選択してください。

子ページ

子ページはありません

同階層のページ
  1. DB接続コマンド
  2. データベース一覧の確認
  3. テーブル一覧の確認
  4. テーブル定義の確認
  5. DBの設定確認
  6. テーブルスペースの容量の確認および拡張
  7. データ型
  8. 複数カラムのUPDATE
  9. カラムの追加/削除/変更
  10. 自動番号付け (autoincrement) する方法
  11. インデックスの作成
  12. シーケンスおよびインクリメント(ID列)の違いと確認方法
  13. create table文の生成
  14. 特定スキーマの全テーブルの全カラム情報を取得する方法
  15. 【DB2】エラー一覧
  16. 【DB2】テーブル定義からCREATE TABLE文を生成する方法

最近更新/作成されたページ