機械翻訳について

資格証明の作成および既存の表へのデータ・ポンプ・ダンプ・ファイルのロード

データ・ロードでは、Oracle Data Pumpダンプ・ファイルをソース・ファイルとして使用することもできます。

このロード・タイプのソース・ファイルは、外部表のORACLE_DATAPUMPアクセス・ドライバを使用してソース・システムからエクスポートする必要があります。 ORACLE_DATAPUMPアクセス・ドライバを使用したエクスポートの詳細は、「ORACLE_DATAPUMPアクセス・ドライバを使用したデータのアンロードおよびロード」を参照してください。

データをロードするには、まずORACLE_DATAPUMPアクセス・ドライバを使用してエクスポートされたダンプ・ファイルをオブジェクト・ストアに移動し、次にDBMS_CLOUD.COPY_DATAを使用してダンプ・ファイルをデータベース内の既存の表にロードします。

この例のソース・ファイルは、Oracle Data Pumpダンプ・ファイルexp01.dmpおよびexp02.dmpです。

  1. プロシージャDBMS_CLOUD.CREATE_CREDENTIALを使用してオブジェクト・ストアの資格証明を保存します。 たとえば:
    SET DEFINE OFF
    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'DEF_CRED_NAME',
        username => 'adb_user@example.com',
        password => 'password'
      );
    END;
    /

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

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

    ノート:

    SQL*PlusやSQL Developerなどのツールの中には、アンパサンド文字(&)を特殊文字として使用するものがあります。 パスワードにアンパサンド文字がある場合は、例に示すように、これらのツールでSET DEFINE OFFコマンドを使用して特殊文字を無効にし、資格証明を正しく作成します。
  2. プロシージャDBMS_CLOUD.COPY_DATAを使用して、既存の表にデータをロードします。 たとえば:
    CREATE TABLE CHANNELS
       (channel_id CHAR(1),
        channel_desc VARCHAR2(20),
        channel_class VARCHAR2(20)
       );
    /
    
    BEGIN
     DBMS_CLOUD.COPY_DATA(
        table_name =>'CHANNELS',
        credential_name =>'DEF_CRED_NAME',
        file_uri_list =>'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/exp01.dmp,
                         https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/exp02.dmp',
        format => json_object('type' value 'datapump')
     );
    END;
    /
    

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

    • table_name: ターゲット表名です。

    • credential_name: 前のステップで作成した資格証明の名前です。 credential_nameパラメータは、Oracleオブジェクトのネーミング規則に準拠している必要があります。 詳細については、「データベース・オブジェクトのネーミング・ルール」を参照してください。

    • file_uri_list: ロードするデータ・ポンプ・ダンプ・ファイルのカンマ区切りリストです。

    • format: ソース・ファイルの形式を記述するために指定できるオプションを定義します。 type'datapump'として指定する場合、他の有効な書式パラメータは'rejectlimit'のみです。

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

    パラメータの詳細は、「COPY_DATAプロシージャ」および「Avro、ORCまたはParquetファイル用のCOPY_DATAプロシージャ」を参照してください。