※本記事は「Oracleデータベースのバックアップをexpdpで取得する方法」の続きとなる記事です。
(0)目次&概説
(3) インポート手順(impdp)
(3-1) (事前作業)ロールの付与
(3-1-1) ロールの付与状況チェック
(3-1-2) ロールの権限付与
(3-2) (事前作業)ディレクトリオブジェクトの作成
(3-2-1) ディレクトリオブジェクトの作成
(3-2-2) ディレクトリオブジェクトの作成確認
(3-2-3) ディレクトリオブジェクトの権限付与
(3-3) (事前作業)ダンプファイルをインポート先へ転送
(3-4) impdpの実行
(3-4-1) impdpの基本構文
(3-4-2) impdpのオプション指定例
(3) インポート手順(impdp)
(3-1) (事前作業)ロールの付与
基本的には記事「Oracleデータベースのバックアップをexpdpで取得する方法」の「(2-1) (事前作業)ロールの付与」とほぼ同じなので、差分となる箇所のみ記載します。
(3-1-1) ロールの付与状況チェック
「(2-1-1) ロールの付与状況チェック」に同じ。
(3-1-2) ロールの権限付与
「(2-1-2) ロールの権限付与」とほぼ同じですが、一点異なるのが必要なロールの名前が「IMP_FULL_DUMP」であるという点です。
(3-2) (事前作業)ディレクトリオブジェクトの作成
手順的にはエクスポートの時と全く一緒ですが、対象のサーバが異なるため、インポート先でも同じ手順を行う必要があります。
(3-2-1) ディレクトリオブジェクトの作成
「(2-2-1) ディレクトリオブジェクトの作成」に同じ。
(3-2-2) ディレクトリオブジェクトの作成確認
「(2-2-2) ディレクトリオブジェクトの作成確認」に同じ。
(3-2-3) ディレクトリオブジェクトの権限付与
「(2-2-3) ディレクトリオブジェクトの権限付与」に同じ。
(3-3) (事前作業)ダンプファイルをインポート先へ転送
expdpで作成したダンプファイル(.dmp)はエクスポート元のサーバ内に生成されるため、サーバ間の物理ファイルのアクセスが無い場合は、ファイル転送等でimpdpを実行するサーバに配置する必要があります。
Linuxサーバ間でのファイル転送の方法について、下記にてscpコマンドを使った転送方法を照会しているので必要でしたらご参照ください。
https://rainbow-engine.com/linux-scp-file-transfer/
(図331)①dmpファイルの移送
(図331)②scpコマンド例
(3-4) impdpの実行
上記の事前準備が完了したら、いよいよimpdpコマンドでDBダンプ(≒バックアップ)をインポートします。
(3-4-1) impdpの基本構文
impdpの基本構文は下記の通りです。実際は[option]の部分にて様々な条件(出力先、対象スキーマなど)を指定して実行することが多いです。
impdp [user]/[password]@[net service name] [option]
impdpの代表的なオプションには以下のような要素があります。
(表) impdpの主なオプション
directory=[dump input path] | インポートするダンプファイルのディレクトリをディレクトリオブジェクトを使って指定します。 |
dumpfile=[dump name].dmp | インポートするダンプファイルの名前を指定します。 |
logfile=[logname].log | ログファイルの名前を指定します。 |
schemas=[your schema] | スキーマ単位でインポートする際に指定します。 |
remap_schema=[before schema]:[after schema] | スキーマの名前を変更する際に指定します。[変更前の名前]:[変更後の名前]の順番になっています。 |
remap_tablespace=[before tablespace]:[after tablespace] | スキーマの名前を変更する際に指定します。[変更前の名前]:[変更後の名前]の順番になっています。 |
(3-4-2) impdpのオプション指定例
下記の例では「ダンプ配置場所」(directory)と「インポートダンプ名」(dumpfile)と「ログファイル名」(logfile)を指定した例です。「DATA_PUMP_DIR」が事前準備にて作成したディレクトリオブジェクトです。
$ cd $ORACLE_HOME/bin/ $ ./impdp directory=DATA_PUMP_DIR dumpfile=REBWEGUSR_20200322.dmp logfile=REBWEGUSR_20200322.log schemas=RBWEGUSR;
(図342)impdpの実行
↓
(中略)
↓
[oracle@tk2-216-17994 bin]$ ./impdp directory=DATA_PUMP_DIR dumpfile=RBWEGUSR_20200322.dmp logfile=RBWEGUSR_20200322.log schemas=RBWEGUSR; Import: Release 11.2.0.1.0 - Production on Mon Mar 23 20:32:46 2020 Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved. Username: RBWEGUSR Password: Connected to: Oracle Database 11g Release 11.2.0.1.0 - 64bit Production Master table "RBWEGUSR"."SYS_IMPORT_SCHEMA_01" successfully loaded/unloaded Starting "RBWEGUSR"."SYS_IMPORT_SCHEMA_01": RBWEGUSR/[password] directory=DATA_PUMP logfile=REBWEGUSR_20200322.log schemas=RBWEGUSR Processing object type SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA Processing object type SCHEMA_EXPORT/SEQUENCE/SEQUENCE Processing object type SCHEMA_EXPORT/TABLE/TABLE Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA . . imported "RBWEGUSR"."EMP" 6.718 MB 138667 rows . . imported "RBWEGUSR"."EMP_BKUP" 10.07 MB 208000 rows . . imported "RBWEGUSR"."EMP_IDX" 6.718 MB 138667 rows . . imported "RBWEGUSR"."EMP_IDX_BKUP" 9.687 MB 200000 rows . . imported "RBWEGUSR"."EMP_TEST2" 6.718 MB 138667 rows (中略) . . imported "RBWEGUSR"."TEST2" 0 KB 0 rows Processing object type SCHEMA_EXPORT/TABLE/INDEX/INDEX Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT Processing object type SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS Processing object type SCHEMA_EXPORT/PROCEDURE/PROCEDURE Processing object type SCHEMA_EXPORT/PROCEDURE/ALTER_PROCEDURE Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT Processing object type SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS Job "RBWEGUSR"."SYS_IMPORT_SCHEMA_01" successfully completed at 20:32:59
[…] ・Oracleデータベースのバックアップをexpdpで取得する方法・Oracleデータベースのバックアップをimpdpでリストアする方法 […]