Datenbanklinks aus einer autonomen KI-Datenbank zu einer Oracle Database auf einem privaten Endpunkt erstellen

Sie können Datenbanklinks aus einer autonomen KI-Datenbank zu einer Oracle Database-Zieldatenbank erstellen, die sich auf einem privaten Endpunkt befindet.

Hinweis: Datenbanklinks von einer zu einer Oracle-Zieldatenbank, die sich auf einem privaten Endpunkt befindet, werden nur in kommerziellen Regionen und US-Regierungsregionen unterstützt. Diese Funktion ist in allen kommerziellen Regionen standardmäßig aktiviert. Dieses Feature ist standardmäßig in US-Regierungsregionen für neu bereitgestellte Datenbanken aktiviert. Wenn Sie Datenbanklinks aus einer autonomen KI-Datenbank zu einem Ziel in einer US-Regierungsregion erstellen möchten, können Sie für vorhandene US-Regierungsdatenbanken auf einem privaten Endpunkt eine Serviceanfrage bei Oracle Cloud Support einreichen und anfordern, dass der private Endpunkt in der Datenbankverknüpfungsfunktion für Regierungsregionen aktiviert wird. Die Regionen der US-Regierung umfassen:

Je nach Typ und Konfiguration der Oracle-Zieldatenbank:

Voraussetzungen für Datenbanklinks von einer autonomen KI-Datenbank zu Oracle-Datenbanken auf einem privaten Endpunkt

Listet die Voraussetzungen zum Erstellen von Datenbanklinks aus einer autonomen KI-Datenbank zu einer Oracle-Zieldatenbank auf, die sich auf einem privaten Endpunkt befindet.

So erstellen Sie einen Datenbanklink zu einer Oracle-Zieldatenbank auf einem privaten Endpunkt:

Datenbanklinks zu Oracle-Datenbanken auf einem privaten Endpunkt ohne Wallet erstellen

Mit DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK können Sie Datenbanklinks aus einer autonomen KI-Datenbank zu einer Oracle-Zieldatenbank erstellen, die sich auf einem privaten Endpunkt befindet, und eine Verbindung ohne Wallet (TCP) herstellen.

Hinweis: Diese Option gilt für Oracle-Zieldatenbanken, die sich auf einem privaten Endpunkt befinden und kein SSL/TCPS konfiguriert ist.

Führen Sie die erforderlichen Schritte aus. Weitere Informationen finden Sie unter Voraussetzungen für Datenbanklinks von einer autonomen KI-Datenbank zu Oracle-Datenbanken auf einem privaten Endpunkt.

So erstellen Sie einen Datenbanklink zu einer Zieldatenbank auf einem privaten Endpunkt mit einer sicheren TCP-Verbindung ohne Wallet:

  1. Erstellen Sie in der autonomen KI-Datenbank Zugangsdaten für den Zugriff auf die Zieldatenbank. Die username und password, die Sie mit DBMS_CLOUD.CREATE_CREDENTIAL angeben, sind die Zugangsdaten für die Zieldatenbank, die innerhalb des Datenbanklinks verwendet wird (wo auf die Zieldatenbank über das VCN zugegriffen wird).

    Beispiel:

     BEGIN
          DBMS_CLOUD.CREATE_CREDENTIAL(
              credential_name => 'PRIVATE_ENDPOINT_CRED',
              username => 'NICK',
              password => '*password*'
              );
     END;
     /
    

    Die Zeichen im Parameter username müssen Großbuchstaben enthalten.

    Dieser Vorgang speichert die Zugangsdaten in einem verschlüsselten Format in der Datenbank. Sie können einen beliebigen Namen als Zugangsdatenname verwenden.

  2. Erstellen Sie den Datenbanklink zur Zieldatenbank mit DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Beispiel:

     BEGIN
          DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
              db_link_name => 'PRIVATE_ENDPOINT_LINK',
              hostname => 'exampleHostname',
              port => '1522',
              service_name => '*exampleServiceName*',
              ssl_server_cert_dn => NULL,
              credential_name => 'PRIVATE_ENDPOINT_CRED',
              directory_name => NULL,
              private_target => TRUE);
     END;
     /
    

    Bei einem Ziel auf einem privaten Endpunkt unterstützt DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK die Angabe eines einzelnen Hostnamens mit dem Parameter hostname. Auf einem privaten Endpunkt wird die Verwendung einer IP-Adresse, einer SCAN-IP oder eines SCAN-Hostnamens nicht unterstützt (wenn sich das Ziel auf einem öffentlichen Endpunkt befindet, unterstützt CREATE_DATABASE_LINK die Verwendung einer IP-Adresse, einer SCAN-IP oder eines SCAN-Hostnamens).

    Wenn das Ziel eine Oracle RAC-Datenbank ist, geben Sie mit dem Parameter rac_hostnames mindestens einen Hostnamen mit DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK an. Auf diese Weise können Sie die High Availability-Funktionen von Oracle RAC nutzen. Die Verwendung einer IP-Adresse, einer SCAN-IP oder eines SCAN-Hostnamens im Wert rac_hostnames wird nicht unterstützt.

    Beispiel: Verwenden Sie bei einer Oracle RAC-Zieldatenbank den Parameter rac_hostnames:

     BEGIN
          DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
              db_link_name => 'PRIVATE_ENDPOINT_LINK',
              rac_hostnames => '["sales1-svr1.*example*.adb.us-ashburn-1.oraclecloud.com",
                                 "sales1-svr2.*example*.adb.us-ashburn-1.oraclecloud.com",
                                 "sales1-svr3.*example*.adb.us-ashburn-1.oraclecloud.com"]',
              port => '1522',
              service_name => '*exampleServiceName*',
              ssl_server_cert_dn => NULL,
              credential_name => 'PRIVATE_ENDPOINT_CRED',
              directory_name => NULL,
              private_target => TRUE);
     END;
     /
    

    DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK unterstützt den Wert localhost für hostname oder den Parameter rac_hostnames nicht.

    Andere Benutzer als ADMIN benötigen Berechtigungen zum Ausführen von DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Wie im Beispiel dargestellt, sind alle folgenden Schritte erforderlich, um einen Datenbanklink mit DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK zu einer Zieldatenbank auf einem privaten Endpunkt mit einer sicheren TCP-Verbindung ohne Wallet zu erstellen:

    • Der Parameter directory_name muss NULL sein.

    • Der Parameter ssl_server_cert_dn muss NULL sein.

    • Der Parameter private_target muss TRUE sein.

  3. Verwenden Sie den von Ihnen erstellten Datenbanklink, um auf Daten in der Zieldatenbank zuzugreifen.

    Beispiel:

     SELECT * FROM employees@PRIVATE_ENDPOINT_LINK;
    

Für die in Schritt 1 erstellten Zugangsdaten, die Oracle Database-Zugangsdaten, können Sie die Zugangsdaten, die die Zugangsdaten des Zielbenutzers enthalten, wie folgt aktualisieren, wenn sich das Kennwort des Zielbenutzers ändert:

BEGIN
  DBMS_CLOUD.UPDATE_CREDENTIAL (
    credential_name => 'DB_LINK_CRED',
    attribute => 'PASSWORD',
    value => '*password*');
END;
/

Dabei ist password das neue Kennwort.

Nach diesem Vorgang funktionieren die vorhandenen Datenbanklinks, die diese Zugangsdaten verwenden, weiter, ohne die Datenbanklinks löschen und neu erstellen zu müssen.

Weitere Informationen finden Sie unter Prozedur CREATE_DATABASE_LINK.

Datenbanklinks von einer autonomen KI-Datenbank zu Oracle-Datenbanken auf einem privaten Endpunkt mit einem Wallet (mTLS) erstellen

Sie können Datenbanklinks aus einer autonomen KI-Datenbank zu einer Oracle-Zieldatenbank erstellen, die sich auf einem privaten Endpunkt befindet.

Hinweis: Diese Option gilt für Oracle-Zieldatenbanken, für die SSL/TCPS konfiguriert ist und die sich auf einem privaten Endpunkt befinden.

Wenn für die Oracle-Zieldatenbank kein SSL/TCPS konfiguriert ist, haben Sie zwei Optionen:

Führen Sie die erforderlichen Schritte aus. Weitere Informationen finden Sie unter Voraussetzungen für Datenbanklinks von einer autonomen KI-Datenbank zu Oracle-Datenbanken auf einem privaten Endpunkt.

So erstellen Sie einen Datenbanklink zu einer Oracle-Zieldatenbank auf einem privaten Endpunkt mit TCP/IP mit SSL-(TCPS-)Authentifizierung:

  1. Kopieren Sie das Zieldatenbank-Wallet cwallet.sso, das die Zertifikate für die Zieldatenbank enthält, in den Objektspeicher.

    Hinweis: Die Wallet-Datei sowie die Datenbankbenutzer-ID und das Kennwort ermöglichen den Zugriff auf Daten in der Oracle-Zieldatenbank. Speichern Sie die Wallet-Dateien an einem sicheren Speicherort. Geben Sie Wallet-Dateien nur für autorisierte Benutzer frei.

  2. Erstellen Sie Zugangsdaten für den Zugriff auf den Objektspeicher, in dem Sie die cwallet.sso speichern. Informationen zu den Benutzernamen- und Kennwortparametern für verschiedene Object Storage-Services finden Sie unter CREATE_CREDENTIAL-Prozedur.

  3. Erstellen Sie ein Verzeichnis in der autonomen KI-Datenbank für die Wallet-Datei cwallet.sso.

    Beispiel:

    CREATE DIRECTORY *wallet_dir* AS '*directory_path_of_your_choice*';
    

    Informationen zum Erstellen von Verzeichnissen finden Sie unter Verzeichnis in autonomer KI-Datenbank erstellen.

  4. Mit DBMS_CLOUD.GET_OBJECT können Sie das Zieldatenbank-Wallet in das Verzeichnis hochladen, das Sie im vorherigen Schritt WALLET_DIR erstellt haben.

    Beispiel:

     BEGIN
     DBMS_CLOUD.GET_OBJECT(
         credential_name => 'DEF_CRED_NAME',
         object_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/*namespace-string*/b/*bucketname*/o/cwallet.sso',
         directory_name => '*WALLET_DIR*');
     END;
     /
    

    In diesem Beispiel ist *namespace-string* der Oracle Cloud Infrastructure-Objektspeicher-Namespace und bucketname der Bucket-Name. Weitere Informationen finden Sie unter Object Storage-Namespaces.

    Hinweis: Die credential_name, die Sie in diesem Schritt verwenden, sind die Zugangsdaten für den Objektspeicher. Im nächsten Schritt erstellen Sie die Zugangsdaten für den Zugriff auf die Zieldatenbank.

  5. Erstellen Sie in der autonomen KI-Datenbank Zugangsdaten für den Zugriff auf die Zieldatenbank. Die username und password, die Sie mit DBMS_CLOUD.CREATE_CREDENTIAL angeben, sind die Zugangsdaten für die Zieldatenbank, die innerhalb des Datenbanklinks verwendet wird (wo auf die Zieldatenbank über das VCN zugegriffen wird).

    Hinweis: Die Angabe des Parameters credential_name ist erforderlich.

    Beispiel:

     BEGIN
       DBMS_CLOUD.CREATE_CREDENTIAL(
         credential_name => 'DB_LINK_CRED',
         username => 'NICK',
         password => '*password*');
     END;
     /
    

    Die Zeichen im Parameter username müssen Großbuchstaben enthalten.

    Dieser Vorgang speichert die Zugangsdaten in einem verschlüsselten Format in der Datenbank. Sie können einen beliebigen Namen als Zugangsdatenname verwenden.

  6. Erstellen Sie den Datenbanklink zur Zieldatenbank mit DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Beispiel:

     BEGIN
       DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
         db_link_name => 'PEDBLINK1',
         hostname => 'example1.adb.ap-osaka-1.oraclecloud.com',
         port => '1522',
         service_name => '*example_high.adb.oraclecloud.com*',
         ssl_server_cert_dn => '*ssl_server_cert_dn*',
         credential_name => 'DB_LINK_CRED',
         directory_name => '*WALLET_DIR*',
         private_target => TRUE);
     END;
     /
    

    Bei einem Ziel auf einem privaten Endpunkt unterstützt DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK die Angabe eines einzelnen Hostnamens mit dem Parameter hostname. Auf einem privaten Endpunkt wird die Verwendung einer IP-Adresse, einer SCAN-IP oder eines SCAN-Hostnamens nicht unterstützt (wenn sich das Ziel auf einem öffentlichen Endpunkt befindet, unterstützt CREATE_DATABASE_LINK die Verwendung einer IP-Adresse, einer SCAN-IP oder eines SCAN-Hostnamens).

    Wenn das Ziel eine Oracle RAC-Datenbank ist, geben Sie mit dem Parameter rac_hostnames mindestens einen Hostnamen mit DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK an. Auf diese Weise können Sie die High Availability-Funktionen von Oracle RAC nutzen. Die Verwendung einer IP-Adresse, einer SCAN-IP oder eines SCAN-Hostnamens im Wert rac_hostnames wird nicht unterstützt.

    Beispiel: Verwenden Sie bei einer Oracle RAC-Zieldatenbank den Parameter rac_hostnames:

     BEGIN
       DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
         db_link_name => 'PEDBLINK1',
         rac_hostnames => '["sales1-svr1.*example*.adb.us-ashburn-1.oraclecloud.com",
                            "sales1-svr2.*example*.adb.us-ashburn-1.oraclecloud.com",
                            "sales1-svr3.*example*.adb.us-ashburn-1.oraclecloud.com"]',
         port => '1522',
         service_name => '*example_high.adb.oraclecloud.com*',
         ssl_server_cert_dn => '*ssl_server_cert_dn*',
         credential_name => 'DB_LINK_CRED',
         directory_name => '*WALLET_DIR*',
         private_target => TRUE);
     END;
     /
    

    DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK unterstützt den Wert localhost für hostname oder den Parameter rac_hostnames nicht.

    Andere Benutzer als ADMIN benötigen Berechtigungen zum Ausführen von DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

  7. Verwenden Sie den von Ihnen erstellten Datenbanklink, um auf Daten in der Zieldatenbank zuzugreifen.

    Beispiel:

    ``sql SELECT * FROM employees@PEDBLINK1;

Für die Zugangsdaten, die Sie in Schritt 5 erstellen, die Oracle Database-Zugangsdaten. Wenn sich das Kennwort des Zielbenutzers ändert, können Sie die Zugangsdaten mit den Zugangsdaten des Zielbenutzers wie folgt aktualisieren:

BEGIN
  DBMS_CLOUD.UPDATE_CREDENTIAL (
    credential_name => 'DB_LINK_CRED',
    attribute => 'PASSWORD',
    value => '*password*');
END;
/

Dabei ist password das neue Kennwort.

Nach diesem Vorgang funktionieren die vorhandenen Datenbanklinks, die diese Zugangsdaten verwenden, weiter, ohne die Datenbanklinks löschen und neu erstellen zu müssen.

Weitere Informationen finden Sie unter Prozedur CREATE_DATABASE_LINK.

Hinweise zu Datenbanklinks mit einer Ziel-Oracle Database

Bietet Hinweise zum Erstellen von Datenbanklinks zu einer Oracle-Zieldatenbank (wenn das Ziel keine autonome KI-Datenbank ist)

Hinweise zu Datenbanklinks zu anderen Oracle-Datenbanken:

Verwandte Inhalte

DBMS_CLOUD_ADMIN-Package