Datenbanklinks zu einer Oracle AI Database erstellen, die keine autonome KI-Datenbank ist
Sie können Datenbanklinks von einer autonomen KI-Datenbank zu einer Oracle AI Database erstellen, die sich auf einem privaten Endpunkt oder auf einem öffentlichen Endpunkt befindet (öffentlich zugänglich).
Hinweis
Hinweis: Siehe Datenbanklinks aus autonomer KI-Datenbank in eine andere autonome KI-Datenbank erstellen, wenn das Ziel für Ihren Datenbanklink eine andere autonome KI-Datenbank ist.
Datenbanklinks aus einer autonomen KI-Datenbank zu einer öffentlich zugänglichen Oracle AI Database mit einem Wallet (mTLS) erstellen
Sie können Datenbanklinks von einer autonomen KI-Datenbank zu einer Oracle AI Database-Zieldatenbank erstellen, die sich auf einem öffentlichen Endpunkt befindet.
Um Datenbanklinks mit Autonomous AI Database zu verwenden, muss die Zieldatenbank so konfiguriert sein, dass TCP/IP mit SSL-(TCPS-)Authentifizierung verwendet wird. Autonome KI-Datenbanken verwenden standardmäßig TCP/IP mit SSL-(TCPS-)Authentifizierung, sodass Sie keine zusätzliche Konfiguration in Ihrer Zieldatenbank vornehmen müssen, um eine Verbindung zu einer anderen autonomen KI-Datenbank herzustellen. Andere Oracle AI-Datenbanken müssen so konfiguriert sein, dass sie TCP/IP mit SSL-(TCPS-)Authentifizierung verwenden. Weitere Informationen finden Sie unter Secure Sockets Layer-Authentifizierung konfigurieren.
Um Datenbanklinks zu einem öffentlichen Ziel zu erstellen, muss auf das Oracle AI Database-Ziel zugegriffen werden können. Einige Datenbanken können den Zugriff einschränken (z.B. mit Access Control-Listen). Stellen Sie sicher, dass die Zieldatenbank den Zugriff von der Quelldatenbank aus ermöglicht, damit der Datenbanklink funktioniert. Wenn Sie den Zugriff mit Access Control-Listen (ACLs) einschränken, können Sie die ausgehende IP-Adresse Ihrer autonomen Quell-AI-Datenbank ermitteln und zulassen, dass diese IP-Adresse eine Verbindung zur Zieldatenbank herstellt.
Weitere Informationen finden Sie unter Datenbanklink von Ihrer autonomen KI-Datenbank zu einer Database Cloud Service-Instanz erstellen.
So erstellen Sie Datenbanklinks zu einer Oracle AI Database-Zieldatenbank mit einem Wallet (mTLS):
-
Kopieren Sie das Zieldatenbank-Wallet
cwallet.sso, das die Zertifikate für die Zieldatenbank enthält, in den Objektspeicher.Beachten Sie Folgendes für die Wallet-Datei:
-
Die Wallet-Datei sowie die Datenbankbenutzer-ID und das Kennwort ermöglichen den Zugriff auf Daten in der Oracle AI Database-Zielinstanz. Speichern Sie die Wallet-Dateien an einem sicheren Speicherort. Geben Sie Wallet-Dateien nur für autorisierte Benutzer frei.
-
Benennen Sie die Wallet-Datei nicht um. Die Wallet-Datei in Object Storage muss den Namen
cwallet.ssohaben.
-
-
Erstellen Sie Zugangsdaten für den Zugriff auf den Objektspeicher, in dem Sie die Wallet-Datei
cwallet.ssospeichern. Informationen zu den Benutzernamen- und Kennwortparametern für verschiedene Object Storage-Services finden Sie unter CREATE_CREDENTIAL-Prozedur.Das Erstellen von Zugangsdaten für den Zugriff auf den Oracle Cloud Infrastructure-Objektspeicher ist nicht erforderlich, wenn Sie Resource-Principal-Zugangsdaten aktivieren. Weitere Informationen finden Sie unter Resource Principal für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen nutzen.
-
Erstellen Sie ein Verzeichnis in der autonomen KI-Datenbank für die Wallet-Datei
cwallet.sso.Beispiel:
CREATE DIRECTORY *dblink_wallet_dir* AS '*directory_path_of_your_choice*';Informationen zum Erstellen von Verzeichnissen finden Sie unter Verzeichnis in autonomer KI-Datenbank erstellen.
-
Mit
DBMS_CLOUD.GET_OBJECTkönnen Sie das Zieldatenbank-Wallet in das Verzeichnis hochladen, das Sie im vorherigen Schritt DBLINK_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 => '*DBLINK_WALLET_DIR*'); END; /In diesem Beispiel ist
namespace-stringder Oracle Cloud Infrastructure-Objektspeicher-Namespace undbucketnameder Bucket-Name. Weitere Informationen finden Sie unter Object Storage-Namespaces.Hinweis
Hinweis: Die in diesem Schritt verwendetecredential_nameist die Zugangsdaten für den Objektspeicher. Im nächsten Schritt erstellen Sie die Zugangsdaten für den Zugriff auf die Zieldatenbank.Das Erstellen von Zugangsdaten für den Zugriff auf den Oracle Cloud Infrastructure-Objektspeicher ist nicht erforderlich, wenn Sie Resource-Principal-Zugangsdaten aktivieren. Weitere Informationen finden Sie unter Resource Principal für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen nutzen.
-
Erstellen Sie in der Instanz der autonomen KI-Datenbank Zugangsdaten für den Zugriff auf die Zieldatenbank. Die
usernameundpassword, die Sie mitDBMS_CLOUD.CREATE_CREDENTIALangeben, sind die Zugangsdaten für die Zieldatenbank, mit der Sie den Datenbanklink erstellen.Hinweis
Hinweis: Die Angabe des Parameterscredential_nameist erforderlich.Beispiel:
BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'DB_LINK_CRED', username => 'NICK', password => 'password'); END; /Die Zeichen im Parameter
usernamemüssen Großbuchstaben enthalten.Hinweis
Hinweis: Sie können in einem Datenbanklink Vault-Secret-Zugangsdaten für die Zieldatenbankzugangsdaten verwenden. Weitere Informationen finden Sie unter Vault-Secret-Zugangsdaten verwenden.Dieser Vorgang speichert die Zugangsdaten in einem verschlüsselten Format in der Datenbank. Sie können einen beliebigen Namen als Zugangsdatenname verwenden.
-
Erstellen Sie den Datenbanklink zur Zieldatenbank mit
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.Beispiel:
BEGIN DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK( db_link_name => 'SALESLINK', hostname => 'adb.eu-frankfurt-1.oraclecloud.com', port => '1522', service_name => 'example_medium.adb.example.oraclecloud.com', credential_name => 'DB_LINK_CRED', directory_name => '*DBLINK_WALLET_DIR*'); END; /Andere Benutzer als ADMIN benötigen Berechtigungen zum Ausführen von
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.Wenn die Wallet-Datei im Verzeichnis, das mit
directory_nameangegeben ist, nichtcwallet.ssoist, meldet die Prozedur einen Fehler wie:ORA-28759: failure to open file. -
Verwenden Sie den von Ihnen erstellten Datenbanklink, um auf Daten in der Zieldatenbank zuzugreifen.
Beispiel:
SELECT * FROM employees@SALESLINK;
Für die Zugangsdaten, die Sie in Schritt 5 erstellen, können Sie die Zugangsdaten der Zieldatenbank 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.
Hinweis
Hinweis: Sie können Links zu Big Data Service mit DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK erstellen. Weitere Informationen finden Sie unter Big Data Service-Hadoop-(HDFS-)Daten aus einer autonomen KI-Datenbank abfragen.
Weitere Informationen finden Sie hier:
Datenbanklinks aus einer autonomen KI-Datenbank zu einer Oracle AI Database auf einem privaten Endpunkt erstellen
Sie können Datenbanklinks aus einer autonomen KI-Datenbank zu einer Oracle AI Database-Zieldatenbank erstellen, die sich auf einem privaten Endpunkt befindet.
Je nach Typ und Konfiguration der Oracle AI Database-Zielinstanz:
-
Eine weitere Oracle AI Database, wie On-Premise- oder Database Cloud Service-Datenbank, auf einem privaten Endpunkt, der für SSL (TCPS) konfiguriert ist: In diesem Fall können Sie den Datenbanklink mit einem Wallet erstellen, und der Datenbanklink kommuniziert mit TCPS. Weitere Informationen finden Sie unter Datenbanklinks aus einer autonomen KI-Datenbank zu Oracle AI-Datenbanken auf einem privaten Endpunkt mit einem Wallet (mTLS) erstellen:
-
Oracle AI Database, wie On-Premise- oder Database Cloud Service-Datenbank, auf einem privaten Endpunkt, der für TCP konfiguriert ist: In diesem Fall erstellen Sie den Datenbanklink ohne Wallet, und der Datenbanklink kommuniziert mit TCP. Weitere Informationen finden Sie unter Datenbanklinks zu Oracle AI-Datenbanken auf einem privaten Endpunkt ohne Wallet erstellen.
Weitere Informationen finden Sie unter Datenbanklink von Ihrer autonomen KI-Datenbank zu einer Database Cloud Service-Instanz erstellen.
Voraussetzungen für Datenbanklinks von einer autonomen KI-Datenbank zu Oracle AI-Datenbanken auf einem privaten Endpunkt
Listet die Voraussetzungen für das Erstellen von Datenbanklinks aus einer autonomen KI-Datenbank zu einer Oracle AI Database-Zieldatenbank auf, die sich auf einem privaten Endpunkt befindet.
So erstellen Sie einen Datenbanklink zu einer Oracle AI Database-Zielinstanz auf einem privaten Endpunkt:
-
Der Zugriff auf die Zieldatenbank muss über das Oracle Cloud Infrastructure-VCN der Quelldatenbank möglich sein. Beispiel: Sie können sich bei der Zieldatenbank anmelden, wenn:
-
Die Zieldatenbank befindet sich auf einem privaten Endpunkt.
-
Sowohl die Quelldatenbank als auch die Zieldatenbank befinden sich in demselben Oracle Cloud Infrastructure-VCN.
-
Die Quelldatenbank und die Zieldatenbank befinden sich in verschiedenen Oracle Cloud Infrastructure-VCNs, die gepaart sind.
-
Die Zieldatenbank ist eine On-Premise-Datenbank, die mit FastConnect oder VPN mit dem Oracle Cloud Infrastructure-VCN der Quelldatenbank verbunden ist.
-
-
Es gibt zwei Optionen zur Angabe der Zieldatenbank. Verwenden Sie den Parameter
hostnameoder den Parameterrac_hostnames:-
Bei einem Ziel auf einem privaten Endpunkt unterstützt
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKdie Angabe eines einzelnen Hostnamens mit dem Parameterhostname. 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ütztCREATE_DATABASE_LINKdie 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_hostnamesmindestens einen Hostnamen mitDBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKan. 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 Wertrac_hostnameswird nicht unterstützt.Wenn Sie im Parameter
rac_hostnameseine Liste mit Hostnamen angeben, verwendetCREATE_DATABASE_LINKalle angegebenen Hostnamen als Adressen in der Verbindungszeichenfolge. Wenn einer der angegebenen Hosts in der Oracle RAC-Zieldatenbank nicht verfügbar ist, versucht Autonomous AI Database automatisch, eine Verbindung mit einem anderen Hostnamen aus der Liste herzustellen.
-
-
Die folgenden Ingress- und Egress-Regeln müssen für den privaten Endpunkt definiert werden:
-
Definieren Sie eine Egress-Regel in der Subnetzsicherheitsliste der Quelldatenbank oder in der Netzwerksicherheitsgruppe, sodass der Traffic über TCP an die IP-Adresse und Portnummer der Zieldatenbank zulässig ist.
-
Definieren Sie eine Ingress-Regel in der Subnetzsicherheitsliste oder Netzwerksicherheitsgruppe der Zieldatenbank, sodass der Traffic über TCP von der IP-Adresse der Quelldatenbank zum Zielport zulässig ist.
Informationen zum Konfigurieren privater Endpunkte mit Ingress- und Egress-Regeln finden Sie unter Netzwerkzugriff mit privaten Endpunkten konfigurieren.
-
Hinweis
Hinweis: Wenn Ihre autonome AI-Datenbankinstanz mit einem privaten Endpunkt konfiguriert ist, legen Sie die Datenbankeigenschaft ROUTE_OUTBOUND_CONNECTIONS fest, um anzugeben, dass alle ausgehenden Datenbanklinks den Egress-Regeln des privaten Endpunkt-VCN der autonomen AI-Datenbankinstanz unterliegen. Weitere Informationen finden Sie unter Erweiterte Sicherheit für ausgehende Verbindungen mit privaten Endpunkten.
Datenbanklinks zu Oracle AI-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 AI Database-Zieldatenbank erstellen, die sich auf einem privaten Endpunkt befindet, und eine Verbindung ohne Wallet (TCP) herstellen.
Hinweis
Hinweis: Diese Option gilt für Oracle AI-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 einer autonomen KI-Zieldatenbank auf einem privaten Endpunkt.
So erstellen Sie einen Datenbanklink zu einer Zieldatenbank auf einem privaten Endpunkt mit einer sicheren TCP-Verbindung ohne Wallet:
-
Erstellen Sie in der autonomen KI-Datenbank Zugangsdaten für den Zugriff auf die Zieldatenbank. Die
usernameundpassword, die Sie mitDBMS_CLOUD.CREATE_CREDENTIALangeben, 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
usernamemüssen Großbuchstaben enthalten.Hinweis
Hinweis: Sie können in einem Datenbanklink Vault-Secret-Zugangsdaten für die Zieldatenbankzugangsdaten verwenden. Weitere Informationen finden Sie unter Vault-Secret-Zugangsdaten verwenden.Dieser Vorgang speichert die Zugangsdaten in einem verschlüsselten Format in der Datenbank. Sie können einen beliebigen Namen als Zugangsdatenname verwenden.
-
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_LINKdie Angabe eines einzelnen Hostnamens mit dem Parameterhostname. 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ütztCREATE_DATABASE_LINKdie 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_hostnamesmindestens einen Hostnamen mitDBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKan. 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 Wertrac_hostnameswird 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_LINKunterstützt den Wertlocalhostfürhostnameoder im Parameterrac_hostnamesnicht.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_LINKzu einer Zieldatenbank auf einem privaten Endpunkt mit einer sicheren TCP-Verbindung ohne Wallet zu erstellen:-
Der Parameter
directory_namemussNULLsein. -
Der Parameter
ssl_server_cert_dnmussNULLsein. -
Der Parameter
private_targetmussTRUEsein.Hinweis
Hinweis: Wenn Sie die DatenbankeigenschaftROUTE_OUTBOUND_CONNECTIONSfestlegen, ist das Festlegen des Parametersprivate_targetaufTRUEin dieser API nicht erforderlich. Weitere Informationen finden Sie unter Erweiterte Sicherheit für ausgehende Verbindungen mit privaten Endpunkten.
-
-
Verwenden Sie den von Ihnen erstellten Datenbanklink, um auf Daten in der Zieldatenbank zuzugreifen.
Beispiel:
SELECT * FROM employees@PRIVATE_ENDPOINT_LINK;Hinweis
Hinweis: Bei den Zugangsdaten, die Sie in Schritt 1 erstellen, können Sie die Oracle AI Database-Zugangsdaten 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 AI-Datenbanken auf einem privaten Endpunkt mit einem Wallet (mTLS) erstellen
Sie können Datenbanklinks aus einer autonomen KI-Datenbank zu einer Oracle AI Database-Zieldatenbank erstellen, die sich auf einem privaten Endpunkt befindet.
Hinweis
Hinweis: Diese Option gilt für Oracle AI-Zieldatenbanken, für die SSL/TCPS konfiguriert ist und die sich auf einem privaten Endpunkt befinden.
Wenn für das Oracle AI Database-Ziel kein SSL/TCPS konfiguriert ist, haben Sie zwei Optionen:
-
Sie können das Oracle AI Database-Ziel so konfigurieren, dass TCP/IP mit SSL-(TCPS-)Authentifizierung verwendet wird. Informationen zur Konfiguration von SSL/TCPS finden Sie unter Transport Layer Security-Authentifizierung konfigurieren.
-
Mit TCP können Sie eine Verbindung zur Oracle AI Database-Zielinstanz herstellen. Weitere Informationen finden Sie unter Datenbanklinks zu Oracle AI-Datenbanken auf einem privaten Endpunkt ohne Wallet erstellen.
Führen Sie die erforderlichen Schritte aus. Weitere Informationen finden Sie unter Voraussetzungen für Datenbanklinks von einer autonomen KI-Datenbank zu einer autonomen KI-Zieldatenbank auf einem privaten Endpunkt.
So erstellen Sie einen Datenbanklink zu einer Oracle AI Database-Zielinstanz auf einem privaten Endpunkt mit TCP/IP mit SSL-(TCPS-)Authentifizierung:
-
Kopieren Sie das Zieldatenbank-Wallet
cwallet.sso, das die Zertifikate für die Zieldatenbank enthält, in den Objektspeicher.Hinweis
Hinweis: Die Wallet-Datei sowie die Datenbankbenutzer-ID und das Datenbankkennwort ermöglichen den Zugriff auf Daten in der Oracle AI Database-Zielinstanz. Speichern Sie die Wallet-Dateien an einem sicheren Speicherort. Geben Sie Wallet-Dateien nur für autorisierte Benutzer frei. -
Erstellen Sie Zugangsdaten für den Zugriff auf den Objektspeicher, in dem Sie die
cwallet.ssospeichern. Informationen zu den Benutzernamen- und Kennwortparametern für verschiedene Object Storage-Services finden Sie unter CREATE_CREDENTIAL-Prozedur. -
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.
-
Mit
DBMS_CLOUD.GET_OBJECTkö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-stringder Oracle Cloud Infrastructure-Objektspeicher-Namespace undbucketnameder Bucket-Name. Weitere Informationen finden Sie unter Object Storage-Namespaces.Hinweis
Hinweis: Die in diesem Schritt verwendetecredential_nameist die Zugangsdaten für den Objektspeicher. Im nächsten Schritt erstellen Sie die Zugangsdaten für den Zugriff auf die Zieldatenbank. -
Erstellen Sie in der autonomen KI-Datenbank Zugangsdaten für den Zugriff auf die Zieldatenbank. Die
usernameundpassword, die Sie mitDBMS_CLOUD.CREATE_CREDENTIALangeben, sind die Zugangsdaten für die Zieldatenbank, die innerhalb des Datenbanklinks verwendet wird (wo auf die Zieldatenbank über das VCN zugegriffen wird).Hinweis
Hinweis: Die Angabe des Parameterscredential_nameist erforderlich.Beispiel:
BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'DB_LINK_CRED', username => 'NICK', password => 'password'); END; /Die Zeichen im Parameter
usernamemüssen Großbuchstaben enthalten.Hinweis
Hinweis: Sie können in einem Datenbanklink Vault-Secret-Zugangsdaten für die Zieldatenbankzugangsdaten verwenden. Weitere Informationen finden Sie unter Vault-Secret-Zugangsdaten verwenden.Dieser Vorgang speichert die Zugangsdaten in einem verschlüsselten Format in der Datenbank. Sie können einen beliebigen Namen als Zugangsdatenname verwenden.
-
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; /Hinweis
Hinweis: Wenn Sie die DatenbankeigenschaftROUTE_OUTBOUND_CONNECTIONSfestlegen, ist das Festlegen des Parametersprivate_targetaufTRUEin dieser API nicht erforderlich. Weitere Informationen finden Sie unter Erweiterte Sicherheit für ausgehende Verbindungen mit privaten Endpunkten.Bei einem Ziel auf einem privaten Endpunkt unterstützt
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKdie Angabe eines einzelnen Hostnamens mit dem Parameterhostname. 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ütztCREATE_DATABASE_LINKdie 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_hostnamesmindestens einen Hostnamen mitDBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKan. 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 Wertrac_hostnameswird 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_LINKunterstützt den Wertlocalhostfürhostnameoder im Parameterrac_hostnamesnicht.Andere Benutzer als ADMIN benötigen Berechtigungen zum Ausführen von
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. -
Verwenden Sie den von Ihnen erstellten Datenbanklink, um auf Daten in der Zieldatenbank zuzugreifen.
Beispiel:
SELECT * FROM employees@PEDBLINK1;Hinweis
Hinweis: Wenn sich das Kennwort des Zielbenutzers ändert, können Sie für die Zugangsdaten, die Sie in Schritt 5 erstellen, die Oracle AI Database-Zugangsdaten 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 Oracle AI Database-Zielinstanz
Bietet Hinweise zum Erstellen von Datenbanklinks zu einer Oracle AI Database-Zieldatenbank (wenn das Ziel keine autonome KI-Datenbank ist)
Hinweise für Datenbanklinks zu anderen Oracle AI-Datenbanken:
-
Wenn Sie Datenbanklinks zwischen der autonomen KI-Datenbank und anderen Oracle AI-Datenbanken verwenden, müssen Sie möglicherweise Patch 33843368 auf der Oracle AI Database einspielen, bei der es sich nicht um eine autonome KI-Datenbank handelt. Dies gilt für Fälle, in denen die Instanz der autonomen KI-Datenbank entweder die Quelle oder das Ziel des Datenbanklinks ist.
Weitere Einzelheiten finden Sie in der My Oracle Support Knowledge Base: Patchanforderung für Datenbanklinks zwischen ADB-S und anderen Oracle AI-Datenbanken (Dok.-ID 2874244.1).
-
Pro Verzeichnis ist nur eine Wallet-Datei zur Verwendung mit Datenbanklinks gültig. Sie können jeweils nur eine
cwallet.ssoin das Verzeichnis hochladen, das Sie für Wallet-Dateien auswählen (z.B. DBLINK_WALLET_DIR). Das bedeutet, dass Sie mit einemcwallet.ssoin DBLINK_WALLET_DIR nur Datenbanklinks zu den Datenbanken erstellen können, für die das Wallet in diesem Verzeichnis gültig ist. Um mehrerecwallet.sso-Dateien mit Datenbanklinks zu verwenden, müssen Sie zusätzliche Verzeichnisse erstellen und jedecwallet.ssoin einem anderen Verzeichnis ablegen. Wenn Sie Datenbanklinks mitDBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKerstellen, geben Sie das Verzeichnis, das das Wallet enthält, mit dem Parameterdirectory_namean.Informationen zum Erstellen von Verzeichnissen finden Sie unter Verzeichnis in autonomer KI-Datenbank erstellen.
-
Unterstützte Oracle AI Database-Zielversionen für Datenbanklinks zu einer anderen Oracle AI Database sind: 19c, 12.2.0 und 12.1.0.
Hinweis
Hinweis: Vollständige Informationen zu unterstützten Versionen finden Sie unter Client Server Interoperability Support Matrix for Different Oracle Versions (Dok.-ID 207303.1) -
Autonomous AI Database setzt den Parameter
SEC_CASE_SENSITIVE_LOGONauftrue, und dieser Wert kann nicht geändert werden. Wenn die Zieldatenbank keine autonome KI-Datenbank ist, müssen Sie den ParameterSEC_CASE_SENSITIVE_LOGONin der Zieldatenbank auftruesetzen. WennSEC_CASE_SENSITIVE_LOGONin der Zieldatenbank auffalsegesetzt ist, wird der FehlerORA-28040: No matching authentication protocolausgelöst. -
Um die Datenbanklinks aufzulisten, verwenden Sie die Ansicht
ALL_DB_LINKS. Weitere Informationen finden Sie unter ALL_DB_LINKS. -
Die Wallet-Datei sowie die Datenbankbenutzer-ID und das Kennwort ermöglichen den Zugriff auf Daten in der Oracle AI Database-Zielinstanz. Speichern Sie die Wallet-Dateien an einem sicheren Speicherort. Geben Sie Wallet-Dateien nur für autorisierte Benutzer frei.
-
Wenn sich die Instanz der autonomen KI-Datenbank auf einem privaten Endpunkt befindet, gibt es zwei Optionen zur Angabe der Zieldatenbank: Verwenden Sie entweder den Parameter
hostnameoder den Parameterrac_hostnames:-
Bei einem Ziel auf einem privaten Endpunkt unterstützt
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKdie Angabe eines einzelnen Hostnamens mit dem Parameterhostname. 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ütztCREATE_DATABASE_LINKdie 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_hostnamesmindestens einen Hostnamen mitDBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKan. 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 Wertrac_hostnameswird nicht unterstützt.Wenn Sie im Parameter
rac_hostnameseine Liste mit Hostnamen angeben, verwendetCREATE_DATABASE_LINKalle angegebenen Hostnamen als Adressen in der Verbindungszeichenfolge. Wenn einer der angegebenen Hosts in der Oracle RAC-Zieldatenbank nicht verfügbar ist, versucht Autonomous AI Database automatisch, eine Verbindung mit einem anderen Hostnamen aus der Liste herzustellen. -
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKunterstützt den Wertlocalhostfürhostnameoder im Parameterrac_hostnamesnicht.
-
-
Wenn Sie
private_target => TRUEverwenden, wird das Erstellen von Realm-übergreifenden Datenbanklinks, bei denen sich die Quelldatenbank und die Zieldatenbank in verschiedenen Oracle Cloud Infrastructure-Realms befinden, nicht unterstützt.