ディレクトリへのOracle Data Pumpファイルとしてのデータのエクスポート

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

このエクスポート方法では、DBMS_CLOUD.EXPORT_DATAプロシージャを使用して、ディレクトリへのダンプ・ファイルとしてエクスポートするデータを選択する問合せを指定します。

  1. Autonomous Databaseインスタンスに接続してください。
  2. ディレクトリの作成

    たとえば:

    CREATE DIRECTORY export_dir AS 'export_dir';
    詳細については、Autonomous Databaseでのディレクトリの作成を参照してください。
  3. DBMS_CLOUD.EXPORT_DATAを使用して、Autonomous DatabaseからディレクトリにOracle Data Pumpダンプ・ファイルとしてデータをエクスポートし、formatパラメータtypedatapumpとして指定します。たとえば:
    BEGIN
     DBMS_CLOUD.EXPORT_DATA(
        file_uri_list => 'export_dir:sales.dmp',
        format => json_object('type' value 'datapump'),
        query => 'SELECT * FROM sales'
     );
    END;
    /
    

    複数のData Pumpファイルとしてデータをディレクトリにエクスポートする例:

    BEGIN
     DBMS_CLOUD.EXPORT_DATA(
        file_uri_list => 'export_dir:sales1.dmp, export_dir:sales2.dmp',
        format => json_object('type' value 'datapump'),
        query => 'SELECT * FROM sales'
     );
    END;
    /
    

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

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

    • format: 必要なtypeパラメータを指定します。有効な値は、datapumpjsonxmlcsvおよびparquetで、オプションで、ORACLE_DATAPUMPアクセス・ドライバを使用してエクスポートに指定できるオプションも定義します。

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

    ノート

    DBMS_CLOUD.EXPORT_DATAプロシージャは、file_uri_listで指定するダンプ・ファイルを作成します。

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

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

  • 指定されたディレクトリが存在し、ADMINユーザーとしてログインするか、ディレクトリへのWRITEアクセス権を持っている必要があります。

  • ファイルは上書きしません。file_uri_listにダンプ・ファイルが存在する場合、DBMS_CLOUD.EXPORT_DATAはエラーを報告します。

    ORA-31641: unable to create dump file  "/u02/exports/123.dmp"
    ORA-27038: created file already exists
  • DBMS_CLOUD.EXPORT_DATAはディレクトリを作成しません。

  • ディレクトリ名は、二重引用符で囲むと大/小文字が区別されます。

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

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

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

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

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

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