データをまとめてインポート/エクスポートするには
出典: DB2逆引きWiki
【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データのファイルが格納されているディレクトリを指定します。複数のディレクトリを指定する場合は、カンマで区切って並べます。 ひとつも指定しなかった場合は、カレントディレクトリを指定したことになります。
| ファイル名 | 内容 |
|---|---|
| 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で処理できません。
