ORACLE/EXPORT(exp)編

オラクルちょこっとリファレンス

HOME > EXPORT(exp)編

EXPORT(exp)

expコマンドによるエクスポートはOracle11g以降、非推奨となっています。
expdpコマンドをご使用ください。

EXPORTはOracleが提供するユーティリティです。

データベース内のデータをダンプ(.dmp)ファイルとして1つのファイルに落とす事ができるので、データのバックアップに使用されます。

また、ダンプファイルをIMPORTユーティリティを使い、他のデータベースへデータを移行することもできます。(バックアップよりもデータ移行が本来の使い方のようです。)

EXPORT概念図

EXPORTの種類

EXPORTにはエクスポートするオブジェクトの範囲分けによって4つのモードがあります。

Exportモード
表モード 指定した表のみエクスポートする
ユーザモード 指定したユーザの所有するオブジェクトのみをエクスポートする
表領域モード 指定した表領域に属するオブジェクトのみエクスポートする
全データベースモード SYSスキーマ以外の全てのオブジェクトをエクスポートする

EXPORTの構文

EXPORTはコマンドラインからコマンドを入力して実行します。コマンドは以下のように記述します。 パラメータがいろいろと指定できるので、細かな設定が可能です。

パラメータ 説明
BUFFER n 従来型パスにおいて、行フェッチに使用されるバッファサイズ
CONSTRAINTS y/n 制約をエクスポートする場合はY
(デフォルト:Y)
CONSISTENT y/n 読取一貫性を保証したトランザクション内でエクスポートする場合は=Y
(デフォルト:N)
COMPRESS y/n 1つのエクステントにまとめる場合は=Y(デフォルト:Y)
DIRECT y/n ダイレクトパスエクスポートで実行する場合は=Y(デフォルト:N)
 ※評価バッファを経由しないため高速にデータを抽出できる。
FILE s エクスポートするファイル名(デフォルト:expdat.dmp)
GRANTS y/n 権限もエクスポートするときは「=Y」(デフォルト:Y)
INCTYPE s ・全エクスポート:COMPLETE
・増分エクスポート:INCREMENTAL
・累積エクスポート:CUMULATIVE
LOG s ログ出力する場合はファイル名を指定する
INDEXES y/n 索引をエクスポートするか?(デフォルト:Y)
PARFILE s パラメータをテキストファイルに記述してそのファイル名を指定することでパラメータをセットできる。
例)exp1.txtというテキストファイルにパラメータを記述しておき、PARFILE=exp1.txtで指定する
ROWS y/n 表のデータ行をエクスポートするか?(デフォルト:Y)
TRIGGERS y/n トリガーをエクスポートする場合は=Y(デフォルト:Y)
USERID s EXPORTを実行するユーザIDとパスワード
TRANSPORT_
TABLESPACE
y/n トランスポータブル表領域として実行する場合は=Y(デフォルト:N)
QUERY s 表モードで行のサブセットをEXPORTするためのWHERE句とORDER BY句の指定
FULL ★ y/n 全データベースモードを指定する場合:
 FULL=Y
OWNER ★ s ユーザモードを指定する場合:
 OWNER=ユーザ名
TABLES ★ s 表モードを指定する場合:
 TABLES=エクスポートする表名[,...]

★のパラメータは指定できるのはどれか1つのみ。

値の意味は以下のとおりです。
  n:数値  s:文字列  y/n:y(Yes)またはn(No)

EXPORT文の例

(例)データベースdb01内の全てのオブジェクトを
 「c:¥fullexp.dmp」ファイルにエクスポートする

 
C:¥>exp usr02/usr02@db01 file=c:¥fullexp.dmp full=y

(例)db01内のusr02スキーマ内のオブジェクトを
 「c:¥usrexp.dmp」ファイルにエクスポートする

 
C:¥>exp usr02/usr02@db01 file=c:¥usrexp.dmp owner=usr02

(例)db01内のusr02スキーマ内のTEST_TBL表とTEST_TBL2表を
 「c:¥tableexp.dmp」ファイルにエクスポートする

 
C:¥>exp usr02/usr02@db01 file=c:¥tableexp.dmp rows=y tables=(TEST_TBL, TEST_TBL2)
ToTop