Oracle10gR2からexp/impがサポートされていない(使うことは可能)。
ということでDatapumpを使用してみたのでメモ。
DataPumpを使用するためには以下のように、バックアップファイルを扱うディレクトリオブジェクトを作成して権限を与えておく必要がある
CREATE DIRECTORY BACKUP_DIR AS ‘D:\BKDIR’; GRANT READ,WRITE ON DIRECTORY BUCK_DIR TO HOGE_USER;
エキスポートの例 (フルバックアップ)
EXPDP HOGE_USER/HOGE_USER@ORCL DIRECTORY=BUCK_DIR DUMPFILE=HOGE.DMP LOGFILE=HOGEEXPDB.LOG FULL=Y
インポートの例 (スキーマ指定)
IMPDB HOGE_USER/HOGE_USER@ORCL DIRECTORY=BUCK_DIR DUMPFILE=HOGE.DMP SCHEMAS=HOGE_USER CONTENT=DATA_ONLY
CONTENT=DATA_ONLY→データのみインポートするオプション。既にテーブルを作成している場合はこのオプションを指定すること。
パラメータファイルを使用したエキスポートの例(スキーマ指定)
EXPDP PARFILE="HOGE.PAR"
HOGE.PAR
USERID=HOGE_USER/HOGE_USER@ORCL DIRECTORY=BUCK_DIR DUMPFILE=HOGE.DMP LOGFILE=HOGEEXPDB.LOG SCHEMAS=HOGE_USER REUSE_DUMPFILES=Y
REUSE_DUMPFILES→ファイルの上書きオプション。エキスポート先にファイルが存在する場合は上書きする。
★ただし、datapumpで操作するディレクトリはDBサーバーであるのが前提のため、別のサーバーに出力したい場合はネットワークドライブを使うなどの工夫が必要となる★
動作確認環境:Oracle 11g