データベース・リンクを使用したOracleおよびOracle Databases以外のデータのロード

このドキュメントのこの項では、データベース・リンクを作成してから、Data Studioを使用してOracle以外の様々なデータベースからAutonomous Databaseにデータを転送する方法について説明します。

データベース・リンクを使用してOracleおよびOracle Databases以外からデータをロードするには、最初にデータベース・リンクを作成する必要があります。

次のステップを実行して、データベース・リンクを使用してOracleデータベースまたはOracle以外のデータベースからAutonomous Databaseにデータをロードします:

  1. データベース・アクション・インスタンスにログインします。「開発」メニューで、「SQL」をクリックします。SQLワークシートを表示できます。
  2. 資格証明およびデータベース・リンクを作成して、Autonomous Databaseにアクセスします。

    DBMS_CLOUD.CREATE_CREDENTIALプロシージャを使用して、指定したusernameおよびpassword値がターゲット・データベースの資格証明である資格証明を作成します。

    DBMS_CLOUD.CREATE_CREDENTIALプロシージャは、暗号化された形式で資格証明を格納します。

    資格証明を作成した後、データ・ロード・ツールを使用して、Oracle Databases以外からData Studioにデータをロードするためのデータベース・リンクを作成します。

    資格証明を作成してから、同じ資格証明を使用してデータベース・リンクを作成するために実行するサンプル・コードを次に示します。
    1. MySQLからのデータベース・リンクの作成:
      BEGIN
        DBMS_CLOUD.CREATE_CREDENTIAL(
          credential_name => 'MYSQLPE_CRED',
          username => 'admin',
          password => <enter password here> );
      
        DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
          db_link_name => 'MYSQLPE_DBLINK',
          hostname => 'scottmysql.scottprivate.com',
          port => '3306',
          service_name => 'scott',
          ssl_server_cert_dn => NULL,
          credential_name => 'MYSQLPE_CRED',
          private_target => TRUE,
          gateway_params => JSON_OBJECT('db_type' value 'MYSQL'));
      END;
      /
      
    2. Microsoft Azureからのデータベース・リンクの作成:
      BEGIN 
        DBMS_CLOUD.CREATE_CREDENTIAL( 
          credential_name => 'AZURE_CRED', 
          username => 'oracle', 
          password => <enter password here> );
      
        DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
          db_link_name => 'AZURE_DBLINK',
          hostname => 'scott-server.database.windows.net',
          port => '1433',
          service_name => 'scottdb',
          ssl_server_cert_dn => NULL,
          credential_name => 'AZURE_CRED',
          gateway_params => JSON_OBJECT('db_type' value 'AZURE'));
      END;
      /
    3. スノーフレークからのデータベース・リンクの作成:
      BEGIN
        DBMS_CLOUD.CREATE_CREDENTIAL(
          credential_name => 'SNOWFLAKE_CRED',
          username => 'SCOTT',
          password => <enter password here> ); 
      
        DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
          db_link_name => 'SNOWFLAKE_DBLINK',
          hostname => 'https://abcdefg-hij12345.snowflakecomputing.com',
          port => '443',
          service_name => 'SCOTTDB',
          credential_name => 'SNOWFLAKE_CRED',
          gateway_params => JSON_OBJECT('db_type' value 'SNOWFLAKE'),
          directory_name => NULL,
          ssl_server_cert_dn => NULL);
      END;
      /
      
    4. ネイティブOCI資格証明を使用したOracle Cloud Object Storageからのデータベース・リンクの作成
      BEGIN
        DBMS_CLOUD.GET_OBJECT(
          object_uri => 'https://objectstorage.us-ashburn-1.oraclecloud.com/n/abcdefgh12ij/b/scott-bucket/o/cwallet.sso',
          credential_name => 'OCI_NATIVE_CRED',
          directory_name => 'REG_WALLET_DIR');
      
        DBMS_CLOUD.CREATE_CREDENTIAL(
          credential_name => 'ADBS_CRED',
          username => 'ADMIN',
          password => <enter password here> );
      
        DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
          db_link_name => 'ADBS_DBLINK',
          hostname => 'adb.us-ashburn-1.oraclecloud.com',
          port => '1522',
          service_name => 'ab1cdefgh2i3jkl_scottadbs_high.adb.oraclecloud.com',
          credential_name => 'ADBS_CRED',
          directory_name => 'REG_WALLET_DIR');
      END;
      /

      パラメータとその値の詳細は、Create_Database_Linkプロシージャを参照してください。

    ノート

    • DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKプロシージャを実行するには、ADMIN権限が必要です。
    • データベース・リンクのターゲット・データベース資格証明には、ボールト・シークレット資格証明を使用できます。詳細は、Vaultシークレット資格証明の使用を参照してください。
    1. データ・ロード・ツールを使用して、OracleおよびOracle Databases以外からデータをロードします。

      作成したデータベース・リンクを使用して、Data Studioのアクセス・データをロードできます。データベース・リンクを作成した後、データ・ロード・ツールで作成したデータベース・リンクのリストを表示および使用し、OracleおよびOracle以外のデータベースのデータにアクセスできます。

      • Data Studioツール・スイートの下の「データ・ロード」をクリックし、「データのロード」カードを選択します。
      • 「データベース」タブをクリックし、作成した使用可能なデータベース・リンクのリストからデータベース・リンクを選択します。この例では、AZURE_DBLINKを使用します。


        azure-dblink.pngの説明が続きます

        ノート

        MySQLから作成したデータベース・リンクはVirtual Cloud Network (VCN)内にあり、Autonomous DatabaseがそのVCN内のプライベート・サブネットに配置されているか、そのサブネットに接続されている必要があるため、表示できません。
      • sample表をデータベースからドラッグ・アンド・ドロップしてデータ・ロード・カートにドロップし、自律型データベースにデータをロードします。


        drag-drop-sample.pngの説明が続きます

      • 「開始」をクリックして、ロード・プロセスを開始します。
      • ツールに表をロードした後、データ・ロード・ダッシュボード「表およびビュー・ロード」セクションに結果を表示できます。


        sample-table-load.pngの説明が続きます

    2. データ・ロード・ツールを使用して、OracleおよびOracle Databases以外からデータをリンクします:

      または、データ・ロードを使用して、データベース・リンクを介してクラウド・データベースに直接アクセスすることで、データ・ビューを作成するデータをリンクすることもできます。

      • Data Studioの「データ・ロード」メニューから、「データのリンク」を選択します。
      • 「データベース」タブを選択します。この例では、ADBS_DBLINKリンクを使用します。
      • customer表をデータベースからドラッグ・アンド・ドロップしてデータ・リンク・カートにドロップし、自律型データベース内のデータをリンクします。


        drag-drop-customer.pngの説明が続きます

      • 「開始」をクリックして、Data Studioでデータのリンクを開始します。
      • データがリンクされると、データ・リンク・ジョブの結果が「データ・ロード」ダッシュボード「表およびビュー・ロード」セクションに表示されます。


        customer-table-load.pngの説明が続きます

Data Studioのデータベース・リンクを使用して、OracleおよびOracle以外のデータベースからデータを正常にロードしました。