Db2-storagegroups
DB2-ストレージグループ
この章では、データベースストレージグループについて説明します。
前書き
データベーステーブルまたはオブジェクトを格納するためのストレージパスのセットは、ストレージグループです。 ストレージグループにテーブルスペースを割り当てることができます。 データベースを作成すると、すべてのテーブルスペースがデフォルトのstoragegorupを使用します。 データベースのデフォルトのストレージグループは「IBMSTOGROUP」です。 「CREATE DATABASE」コマンドの最後に「AUTOMATIC STOGROUP NO」パラメーターを渡すと、新しいデータベースを作成するときにデフォルトのストレージグループがアクティブになります。 データベースには、デフォルトのストレージグループはありません。
ストレージグループのリスト
データベース内のすべてのストレージグループを一覧表示できます。
構文:[現在のデータベースで使用可能なストレージグループのリストを表示するには]
db2 select * from syscat.stogroups
例:[現在のデータベースで使用可能なstoragegorupsのリストを表示するには]
db2 select * from syscat.stogroups
ストレージグループの作成
データベースにストレージグループを作成する構文は次のとおりです。
構文:[新しいstogroupを作成します。 「stogropu_name」は新しいストレージグループの名前を示し、「path」はデータ(テーブル)が保存されている場所を示します]
db2 create stogroup on ‘path’
例:[パス 'data1’フォルダーに新しいstogroup 'stg1’を作成するには]
db2 create stogroup stg1 on ‘/data1’
出力:
DB20000I The SQL command completed succesfully
stogroupを使用して表領域を作成する
storegroupを使用して表領域を作成する方法は次のとおりです。
構文:[既存のストレージグループを使用して新しいテーブルスペースを作成するには]
db2 create tablespace <tablespace_name> using stogroup <stogroup_name>
例:[既存のストレージグループ「stg1」を使用して「ts1」という名前の新しいテーブルスペースを作成するには]
db2 create tablespace ts1 using stogroup stg1
出力:
DB20000I The SQL command completed succesfully
ストレージグループの変更
次の構文を使用して、ストアグループの場所を変更できます。
構文:[ストレージグループを古い場所から新しい場所に移動するには]
db2 alter stogroup add ‘location’, ‘location’
例:[「sg1」という名前のストレージグループのロケーションパスを古いロケーションから新しいロケーションに変更するには]
db2 alter stogroup sg1 add ‘/path/data3’, ‘/path/data4’
ストレージグループのフォルダーパスの削除
ストレージグループのフォルダーパスを削除する前に、alterコマンドを使用して、ストレージグループの新しい場所を追加できます。
構文:[ストレージグループの場所から古いパスを削除するには]
db2 alter stogroup drop ‘/path’
例:[ストレージグループの場所を「stg1」から削除するには]
db2 alter stogroup stg1 drop ‘/path/data1’
表領域のリバランス
データベースでトランザクションが実行され、テーブルスペースがいっぱいになったときにストレージグループまたはテーブルスペース用の新しいフォルダを作成する場合、テーブルスペースの再バランスが必要です。 リバランスにより、データベース構成ファイルが新しいストレージグループで更新されます。
構文:[古いストレージグループパスから新しいストレージグループへのテーブルスペースのバランスを再調整するには]
db2 alter tablspace <ts_name> rebalance
例:[リバランスする]
db2 alter tablespace ts1 rebalance
ストレージグループの名前を変更する
構文:[既存のストレージ名を変更するには]
db2 rename stogroup <old_stg_name> to <new_stg_name>
例:[ストレージグループの名前を「sg1」から新しい名前「sgroup1」に変更するには]
db2 rename stogroup sg1 to sgroup1
ストレージグループの削除
- ステップ1 *:ストレージグループを削除する前に、テーブルスペースに異なるストレージグループを割り当てることができます。
構文:[表スペースに別のストレージグループを割り当てるには。]
db2 alter tablspace <ts_name> using stogroup <another sto_group_name>
例:[テーブルスペース「ts1」の「sg2」という名前の古いstogroupから新しいstogroupに変更するには]
db2 alter tablespace ts1 using stogroup sg2
ステップ2:
構文:[既存のstogroupを削除するには]
db2 drop stogorup <stogroup_name>
例:[データベースからstogroup 'stg1’を削除するには]
db2 drop stogroup stg1