機械翻訳について

EXPORT_DATAを使用したOracle Data Pumpファイルとしてデータをオブジェクト・ストアに移動

問合せを指定することで、Oracle Data Pumpダンプ・ファイルにデータをエクスポートできます。

このエクスポート・メソッドでは、DBMS_CLOUD.EXPORT_DATAプロシージャを使用して、エクスポートするデータを選択する問合せを次のように指定します:

  1. データベースに接続します。
  2. プロシージャDBMS_CLOUD.CREATE_CREDENTIALを使用してオブジェクト・ストアの資格証明を保存します。

    たとえば:

    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'DEF_CRED_NAME',
        username => 'adb_user@example.com',
        password => 'password'
      );
    END;
    /
    

    リソース・プリンシパル資格証明を有効にした場合、Oracle Cloud Infrastructureオブジェクト・ストアにアクセスするための資格証明の作成は必要ありません。 詳細については、「リソース・プリンシパルを使用したOracle Cloud Infrastructureリソースへのアクセス」を参照してください。

    この操作では、資格証明がデータベースに暗号化された形式で保存されます。  資格証明名には任意の名前を使用できます。 このステップは、オブジェクト・ストア資格証明が変更されないかぎり、1回のみ実行すれば済みます。 資格証明を格納すると、同じ資格証明名を使用できるようになります。

    様々なオブジェクト・ストレージ・サービスのusernameおよびpasswordパラメータの詳細は、「CREATE_CREDENTIALプロシージャ」を参照してください。

  3. formatパラメータtypeを値datapumpに設定してDBMS_CLOUD.EXPORT_DATAを呼び出して、Autonomous DatabaseからCloud Object StoreにOracle Data Pumpダンプ・ファイルとしてデータをエクスポートします。 たとえば:
    BEGIN
     DBMS_CLOUD.EXPORT_DATA(
        credential_name =>'DEF_CRED_NAME',
        file_uri_list =>'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/exp01.dmp',
        format => json_object('type' value 'datapump'),
        query => 'SELECT warehouse_id, quantity FROM inventories'
     );
    END;
    /
    

    パラメータは次のとおりです:

    • credential_name: 前のステップで作成した資格証明の名前です。

    • file_uri_list: エクスポート・ファイルのカンマ区切りリストです。 ワイルドカードおよび置換文字の使用は、file_uri_listではサポートされていません。

    • format: 必須のtypeパラメータを値datapumpで指定し、オプションでORACLE_DATAPUMPアクセス・ドライバを使用してエクスポートに指定できるオプションを定義します。

    • query: 必要なデータのみがエクスポートされるようにSELECT文を指定します。 問合せによってダンプ・ファイルの内容が決定されます。

    この例では、namespace-stringがOracle Cloud Infrastructureオブジェクト・ストレージのネームスペースで、bucketnameがバケット名です。 詳細については、「オブジェクト・ストレージのネームスペースについて」を参照してください。

    ノート:

    DBMS_CLOUD.EXPORT_DATAプロシージャは、file_uri_listで指定したダンプ・ファイルを作成します。 このプロシージャは、ファイルを上書きしません。 file_uri_listにダンプ・ファイルが存在する場合、DBMS_CLOUD.EXPORT_DATAはエラーを報告します。 DBMS_CLOUD.EXPORT_DATAではバケットは作成されません。

    パラメータの詳細は、「EXPORT_DATAプロシージャ」を参照してください。

  4. 必要なステップを実行して、Oracle Data Pumpのインポートおよびクリーンアップを使用します。 詳細は、「ダンプ・ファイルのダウンロード、データ・ポンプ・インポートの実行およびオブジェクト・ストアのクリーンアップ」を参照してください。

DBMS_CLOUD.EXPORT_DATAを使用したデータのエクスポートに関するノート:

  • DBMS_CLOUD.EXPORT_DATAで作成したダンプ・ファイルは、Oracle Data Pump impdpを使用してインポートできません。 データベースに応じて、次のようにこれらのファイルを使用できます:

    • Autonomous Databaseでは、formatパラメータtypeを値' datapump 'でサポートするDBMS_CLOUDプロシージャとともにダンプ・ファイルを使用できます。 DBMS_CLOUD.COPY_DATAを使用してダンプ・ファイルをインポートするか、DBMS_CLOUD.CREATE_EXTERNAL_TABLEをコールして外部表を作成できます。

    • Oracle Database 19cオンプレミスなどの他のOracle Databaseでは、ORACLE_DATAPUMPアクセス・ドライバを使用して、DBMS_CLOUD.EXPORT_DATAプロシージャで作成されたダンプ・ファイルをインポートできます。 詳細については、「ORACLE_DATAPUMPアクセス・ドライバを使用したデータのアンロードおよびロード」を参照してください。

  • DBMS_CLOUD.EXPORT_DATAで生成されるダンプ・ファイルの数は、プロシージャの実行時に決定されます。 生成されるダンプ・ファイルの数は、file_uri_listパラメータで指定するファイル名の数、インスタンスで使用可能なECPUの数、サービス・レベルおよびデータ・サイズによって異なります。

    たとえば、2つのECPU Autonomous Databaseインスタンスまたはlowサービスを使用する場合、複数のファイル名を指定した場合でも、単一のダンプ・ファイルはパラレル化なしでエクスポートされます。 mediumまたはhighサービスで8つのECPU Autonomous Databaseインスタンスを使用する場合、複数のファイル名を指定すると、ジョブをパラレルに実行でき、複数のダンプ・ファイルがエクスポートされます。

  • 指定するqueryパラメータ値は、必要に応じて、結合または副問合せを含む問合せなどの拡張問合せにすることができます。