【DB2逆引きリファレンス目次】 【DB2逆引きリファレンス目次#保守作業編】 【DB2逆引きリファレンス目次#データの移動】
前提
- コマンドにより実行されるインポート、エクスポートを行う権限
解説
複数のテーブルをまとめてインポートもしくはエクスポートするには、db2moveコマンドを用います。
db2move データベース名 [-u ユーザ名 -p パスワード ] アクション指定 [ 対象表指定 ]
[-io インポートオプション指定 ] [-lo ロードオプション指定 ]
[-l LOBデータ格納ディレクトリ指定 ]
データベース名
: インポートもしくはエクスポートするデータが格納されているデータベースの名前を指定します。
-u ユーザ名 -p パスワード
: データベースの接続に用いるユーザー名およびパスワードを指定します。指定しない場合、OSへのログインに用いたユーザー名でデータベースに接続されます。
アクション指定
: アクションを以下の形式のいずれかで指定します。
EXPORT
: 複数の表のデータをまとめてエクスポートします。
IMPORT
: 複数の表のデータをまとめてインポートします。
LOAD
: 複数の表のデータをまとめてロードします。
対象表指定
: 指定したアクションの対象となる表を、以下の形式のいずれかで指定します。指定しない場合、データベースに含まれる表すべてが対象となります。
-tc 所有ユーザー名
: 指定したユーザーによって作成された表すべてを対象とします。
-tn 表名のリスト
: 指定した表を対象とします。対象とする表の名前をカンマで区切って並べます。
-sn スキーマ名
: 指定したスキーマに含まれる表すべてを対象とします。
-io インポート方法指定
: インポートを実行するときのインポート方法を指定します。指定できるインポート方法方法は通常のインポートの場合と同じです。 デフォルトはREPLACE_CREATEです。
-lo ロード方法指定
: ロードを実行するときのロード方法を指定します。指定できるロード方法方法は通常のロードの場合と同じです。 デフォルトはINSERTです。
-l LOBデータ格納ディレクトリ指定
: LOBデータのファイルが格納されているディレクトリを指定します。複数のディレクトリを指定する場合は、カンマで区切って並べます。 ひとつも指定しなかった場合は、カレントディレクトリを指定したことになります。
アクションでexportを指定してdb2moveを実行すると、表6-3-1にあげるような複数のファイルに表のデータが出力されます。
| ファイル名 | 内容 |
|---|---|
| db2move.lst | 表および対応するデータファイルのリストが含まれる。 |
| tab nnn .ixf | 各表のデータが格納されたファイル。 |
| tab nnnc.yyy | LOBデータが格納されたファイル。 |
表6-3-1: db2moveのexportアクションにより生成されるファイル
これらのファイルは基本的にdb2moveを実行した時のカレントディレクトリに出力されます。 importもしくはloadを実行する場合は、これらのファイルをカレントディレクトリに置いた上でdb2moveを実行します。 なお、LOBデータについては例外で、ファイルの格納場所を-lオプションで変更することができます。
使用例
データベース(ここではsample)に含まれる表すべてをエクスポートする例。
$ db2move sample export↓
指定したスキーマ(ここではdbapp)に含まれる表すべてをエクスポートする例。
$ db2move sample export -ts dbapp↓
LOBデータが格納されているディレクトリ(ここでは/lob1および/lob2)を指定した上で、データベース(ここではsample)に表をまとめてインポートする例。
$ db2move sample import -l /lob1,/lob2↓
注意
- 構造型の列を含む表は、db2moveで処理できません。