Autonomous DatabaseでのOracle Data Pumpを使用したデータのインポート
Oracle Data Pumpは、OracleデータベースとAutonomous Database間の非常に高速なバルク・データおよびメタデータの移動を提供します。
Data Pump Importでは、Oracle Cloud Infrastructure Object Storage、Microsoft Azure、AWS S3およびOracle Cloud Infrastructure Object Storage ClassicにあるData Pumpファイルからデータをインポートできます。 データをクラウド・オブジェクト・ストアに保存し、Oracle Data Pumpを使用してデータをAutonomous Databaseにロードできます。
ロードまたはインポート操作で次のタイムゾーン関連エラーが発生した場合は、タイムゾーン・ファイルをデータベースで使用可能な最新バージョンにアップグレードする必要があります:
ORA-39405: Oracle Data Pump does not support importing from a source database with TSTZ version n+1
into a target database with TSTZ version n.
このタイムゾーン関連のエラーの詳細は、「Autonomous Databaseでのタイムゾーン・ファイルの更新の管理」を参照してください。
- 「Autonomous Databaseにインポートする既存のOracle Databaseのエクスポート」
Oracle Data Pump Exportを使用して、Oracle Data Pump Importを使用して既存のOracle Databaseをエクスポートし、Autonomous Databaseに移行します。 - 「Oracle Data Pumpバージョン18.3以降を使用したデータのインポート」
Oracleでは、Data PumpファイルからAutonomous Databaseにデータをインポートするために最新のOracle Data Pumpバージョンを使用することをお薦めします。このバージョンには、より優れた操作性を実現するための拡張機能と修正が含まれているためです。 - 「Oracle Data Pump (バージョン12.2.0.1以前)を使用したデータのインポート」
Data Pumpクライアント・バージョン12.2.0.1以前を使用して、default_credential
パラメータを設定することで、Data PumpファイルからAutonomous Databaseにデータをインポートできます。 - 「データ・ポンプ・インポートのログ・ファイルへのアクセス」
Data Pump Import操作のログ・ファイルは、データ・ポンプのimpdp
directoryパラメータで指定したディレクトリに格納されます。 - 「Oracle Data Pumpインポートおよび表の圧縮」
Autonomous DatabaseでOracle Data Pumpインポートを使用するためのノートを示します。
親トピック: Autonomous Databaseへのデータのロード
Autonomous Databaseにインポートするための既存のOracle Databaseのエクスポート
Oracle Data Pumpエクスポートを使用して既存のOracle Databaseをエクスポートし、Oracle Data Pumpインポートを使用してAutonomous Databaseに移行します。
Oracleでは、Oracle Data Pumpスキーマ・モードを使用してデータベースをAutonomous Databaseに移行することをお薦めします。 schemasパラメータを使用すると、エクスポートするスキーマをリスト表示できます。
移行を高速化するには、スキーマを複数のデータ・ポンプ・ファイルにエクスポートし、並列処理を使用します。 使用するダンプ・ファイル名の形式を指定するには、dumpfileパラメータを使用します。 parallelパラメータを、少なくともデータベースにあるCPUの数に設定します。
Oracleでは、Autonomous Databaseへの移行を迅速かつ容易にするために、次のデータ・ポンプ・パラメータを使用することをお薦めします:
exclude=cluster,indextype,db_link parallel=n schemas=schema_name dumpfile=export%u.dmp
exclude
パラメータを使用すると、これらのオブジェクト型がエクスポートされなくなります。
encryption_pwd_prompt=yes
Oracle Data Pumpエクスポートでは、ダンプ・ファイルを暗号化するための暗号化パスワードを入力するように求められます。
次の例では、16個のCPUを持つ「データベース」に移行するために、SHスキーマをソースOracle Databaseからエクスポートします:
expdp sh/sh@orcl \
exclude=cluster,indextype,db_link \
parallel=16 \
schemas=sh \
dumpfile=export%u.dmp \
encryption_pwd_prompt=yes
ノート:
expdp
によるエクスポートでencryption_pwd_prompt=yes
パラメータを使用する場合は、encryption_pwd_prompt=yes
もインポートで使用し、impdp
プロンプトで同じパスワードを入力してダンプ・ファイルを復号化します(エクスポート時に指定したパスワードを記憶してください)。 暗号化パスワードの最大長は128バイトです。
要件に応じて、圧縮などの他のデータ・ポンプ・エクスポート・パラメータを使用できます。 Oracle Data Pump Exportの詳細は、『Oracle Databaseユーティリティ』を参照してください。
Oracle Data Pump Version 18.3以降を使用したデータのインポート
Oracleでは、データ・ポンプ・ファイルからAutonomous Databaseにデータをインポートするために最新のOracle Data Pumpバージョンを使用することをお薦めします。これには、操作性を向上させるための拡張機能と修正が含まれています。
プラットフォームの「Oracle Instant Clientダウンロード」からOracle Data Pumpを含む最新バージョンのOracle Instant Clientをダウンロードします。 Oracle Instant Clientをダウンロードした後に必要なインストール・ステップは、プラットフォームのインストール・ダウンロード・ページのインストール・ステップを参照してください。
Oracle Data Pumpバージョン18.3以降では、「資格証明」引数によって、ソース・ファイルに使用しているCloud Object Storageサービスにデータ・ポンプが認証されます。 dumpfile引数は、データ・ポンプ・ファイルのURLのカンマ区切りリストです。
Oracle Data Pumpで、ソース・ファイルがOracle Cloud Infrastructureオブジェクト・ストレージに存在する場合は、Oracle Cloud InfrastructureネイティブURIまたはSwift URIを使用できます。 これらのファイルURI形式の詳細は、「DBMS_CLOUD URIの書式」を参照してください。
Oracle Data Pumpを使用したインポートとcredential
パラメータの設定
Oracle Data Pumpを使用してインポートするためのノート:
-
Swift URIを使用してオブジェクト・ストレージへのOracle Data Pumpエクスポートを実行する場合は、Swift資格証明を使用してOracle Data Pumpインポートでインポートする必要があります。 Swift URIの詳細は、「Oracle Cloud Infrastructure Object Storage Swift URI形式」を参照してください。
-
ネイティブURIを使用してオブジェクト・ストレージへのOracle Data Pumpエクスポートを実行する場合、Swift資格証明または署名キー・ベースの資格証明を使用してインポートできます。 ネイティブURIの詳細は、「Oracle Cloud Infrastructure Object StorageネイティブURI形式」を参照してください。
- 「OCIリソース・プリンシパル資格証明でのOracle Data Pumpを使用したデータのインポート」
Oracle Data Pumpでは、Oracle Cloud Infrastructureリソース・プリンシパルを資格証明オブジェクトとして使用して、データ・ポンプ・ファイルをAutonomous Databaseにインポートできます。
OCIリソース・プリンシパル資格証明でのOracle Data Pumpを使用したデータのインポート
Oracle Data Pumpでは、Oracle Cloud Infrastructureリソース・プリンシパルを資格証明オブジェクトとして使用して、データ・ポンプ・ファイルをAutonomous Databaseにインポートできます。
Oracle Data Pump expdp
を使用してオブジェクト・ストアに直接エクスポートする場合は、impdp
を使用してインポートしたときのエクスポートに使用されたものと同じ資格証明を使用する必要があります。 この場合、Oracle Data Pumpインポートでは、Oracle Cloud Infrastructureリソース・プリンシパル資格証明はサポートされていません。 アップロードする他のメソッドは、リソース・プリンシパル資格証明を使用したimpdp
の使用でサポートされています。 たとえば、DBMS_CLOUD.PUT_OBJECT
を使用してオブジェクト・ストアにOracle Data Pumpファイルをアップロードする場合、リソース・プリンシパル資格証明を使用してOracle Data Pump impdp
を使用してファイルをインポートできます。 同様に、Oracle Cloud Infrastructureコンソールを使用してデータ・ポンプ・ファイルをオブジェクト・ストアにアップロードする場合は、リソース・プリンシパル資格証明を使用して、Oracle Data Pump impdp
を使用してAutonomous Databaseインスタンスにインポートできます。
Oracle Data Pumpで、ソース・ファイルがOracle Cloud Infrastructureオブジェクト・ストレージに存在する場合は、Oracle Cloud InfrastructureネイティブURIまたはSwift URIを使用できます。 これらのファイルURI形式の詳細は、「DBMS_CLOUD URIの書式」を参照してください。
Oracle Data Pump (バージョン12.2.0.1および以前)を使用したデータのインポート
データ・ポンプ・クライアント・バージョン12.2.0.1以前を使用して、データ・ポンプ・ファイルからAutonomous Databaseにデータをインポートするには、default_credential
パラメータを設定します。
データ・ポンプ・インポートのバージョン(12.2.0.1)以前に「資格証明」パラメータがありません。 古いバージョンのData Pump Importを使用している場合は、Autonomous Databaseのデフォルトの資格証明プロパティを定義し、dumpfile
パラメータのdefault_credential
キーワードを使用する必要があります。
Oracle Data Pumpでは、ソース・ファイルがOracle Cloud Infrastructureオブジェクト・ストレージに存在する場合は、Oracle Cloud InfrastructureネイティブURIまたはSwift URIを使用できます。 これらのファイルURI形式の詳細は、「DBMS_CLOUD URIの書式」を参照してください。
旧バージョンのOracle Data Pumpを使用したインポートとdefault_credential
の設定
ノート:
全インポートを実行したり、他のユーザーが所有するオブジェクトをインポートするには、DATAPUMP_CLOUD_IMP
のロールが必要です。
データ・ポンプ・インポートを使用して、SODAコレクションをAutonomous Databaseにインポートすることもできます。 詳細については、「Oracle Data Pumpバージョン19.6以降を使用したSODAコレクション・データのインポート」を参照してください。
Autonomous Databaseの許可されないオブジェクトの詳細は、「SQLコマンド」を参照してください。
Autonomous DatabaseでのOracle Data Pumpインポートを使用した表圧縮の詳細は、「Oracle Data Pumpインポートおよび表の圧縮」を参照してください。
Oracle Data Pump Importパラメータの詳細は、『Oracle Databaseユーティリティ』を参照してください。
Oracle Data Pumpを使用してインポートするためのノート:
-
Swift URIを使用してオブジェクト・ストレージへのOracle Data Pumpエクスポートを実行する場合は、Swift資格証明を使用してOracle Data Pumpインポートでインポートする必要があります。 Swift URIの詳細は、「Oracle Cloud Infrastructure Object Storage Swift URI形式」を参照してください。
-
ネイティブURIを使用してオブジェクト・ストレージへのOracle Data Pumpエクスポートを実行する場合、Swift資格証明または署名キー・ベースの資格証明を使用してインポートできます。 ネイティブURIの詳細は、「Oracle Cloud Infrastructure Object StorageネイティブURI形式」を参照してください。
データ・ポンプ・インポートのログ・ファイルへのアクセス
Data Pump Import操作のログ・ファイルは、データ・ポンプのimpdp
directoryパラメータで指定したディレクトリに格納されます。
ログ・ファイルにアクセスするには、プロシージャDBMS_CLOUD.PUT_OBJECT
を使用してログ・ファイルをCloud Object Storageに移動する必要があります。 たとえば、次のPL/SQLブロックは、import.log
ファイルをCloud Object Storageに移動します:
BEGIN
DBMS_CLOUD.PUT_OBJECT
(
credential_name => 'DEF_CRED_NAME',
object_uri => 'https://objectstorage.us-ashburn-1.oraclecloud.com/n/namespace-string/b/bucketname/o/import.log',
directory_name => 'DATA_PUMP_DIR',
file_name => 'import.log');
END;
/
この例では、namespace-string
がOracle Cloud Infrastructureオブジェクト・ストレージのネームスペースで、bucketname
がバケット名です。 詳細については、「オブジェクト・ストレージのネームスペースについて」を参照してください。
リソース・プリンシパル資格証明を有効にした場合、Oracle Cloud Infrastructureオブジェクト・ストアにアクセスするための資格証明の作成は必要ありません。 詳細については、「リソース・プリンシパルを使用したOracle Cloud Infrastructureリソースへのアクセス」を参照してください。
詳細は、「DBMS_CLOUDサブプログラムおよびREST API」を参照してください。
Oracle Data Pumpインポートおよび表の圧縮
Autonomous DatabaseでOracle Data Pumpインポートを使用するためのノートを示します。
デフォルトでは、Oracle Data Pumpインポート・ユーティリティは、ソース・データベース(データのエクスポート元のデータベース)の表に対して指定された圧縮タイプと同じ圧縮タイプのデータをインポートします。 圧縮をAutonomous Databaseのままにする場合は、データのインポート時に次のパラメータを指定します:
TRANSFORM=TABLE_COMPRESSION_CLAUSE:NONE
このオプションを指定したTRANSFORM
パラメータでは、Oracle Data Pump Importでソース表の圧縮タイプが無視されるように指定します。 このオプションOracle Data Pumpを使用すると、デフォルトの圧縮タイプを使用して表がAutonomous Databaseにインポートされます。デフォルトの圧縮タイプはAutonomous Databaseワークロード・タイプによって異なります:
-
データ・ウェアハウス: デフォルトの表圧縮はハイブリッド・コラム圧縮です。
Oracleでは、ロードによってデータが圧縮されるため、アプリケーションで主に表に対するバルク・ロード操作を使用する場合は、このデフォルトを使用することをお薦めします。 これらの表の問合せパフォーマンスは、問合せでIOを削減する必要があるため、圧縮のメリットがあります。
Oracle GoldenGateまたはその他のレプリケーション・ツールを使用して他のシステムからレプリケートされたステージング表がある場合、またはアプリケーションで主に表に対する行ごとのDML操作を使用する場合、Oracleでは、表を圧縮しないままにするか、拡張行圧縮を使用することをお薦めします。
-
Transaction Processing: デフォルトの表圧縮は圧縮されません。
-
JSONデータベース: デフォルトの表圧縮は圧縮されません。
-
APEX: デフォルトの表圧縮は圧縮されません。
Oracle Data Pump Import TRANSFORM
パラメータの詳細は、TRANSFORMを参照してください。
詳細については、「表圧縮について」を参照してください。