Datenbanklinks zu Nicht-Oracle AI-Datenbanken mit dem Kunden verwalteter heterogener Konnektivität auf einem privaten Endpunkt erstellen
Sie können Datenbanklinks von einer autonomen KI-Datenbank zu einem Oracle AI Database-Gateway erstellen, um auf Nicht-Oracle-Datenbanken zuzugreifen, die sich auf einem privaten Endpunkt befinden.
In diesem Abschnitt werden die Schritte zur Verwendung von Datenbanklinks für die Verbindung von einer autonomen KI-Datenbank zu einer Nicht-Oracle AI Database beschrieben, die über ein Oracle AI Database-Gateway, in dem sich die Nicht-Oracle AI Database auf einem privaten Endpunkt befindet, erfolgt.
Voraussetzungen zum Erstellen von Datenbanklinks zu vom Kunden verwalteter heterogener Konnektivität zu Nicht-Oracle AI-Datenbanken auf einem privaten Endpunkt
Führt die Voraussetzungen zum Erstellen von Datenbanklinks aus einer autonomen KI-Datenbank mit vom Kunden verwalteter heterogener Konnektivität zu Nicht-Oracle AI-Datenbanken auf, die sich auf einem privaten Endpunkt befinden.
So erstellen Sie einen Datenbanklink mit vom Kunden verwalteter heterogener Konnektivität zu Nicht-Oracle AI-Datenbanken, die sich auf einem privaten Endpunkt befinden:
-
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.
-
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).
-
-
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 mit Vom Kunden verwalteter heterogener Konnektivität zu Nicht-Oracle AI-Datenbanken auf einem privaten Endpunkt (ohne Wallet) erstellen
Sie können Datenbanklinks von einer autonomen KI-Datenbankinstanz zu einem Oracle AI Database-Gateway erstellen, um auf Nicht-Oracle-Datenbanken zuzugreifen, die sich auf einem privaten Endpunkt befinden und sich entweder mit einem Wallet (TCPS) oder ohne Wallet (TLS) verbinden.
So erstellen Sie Datenbanklinks von einer autonomen KI-Datenbankinstanz auf einem privaten Endpunkt zu einem Oracle AI Database-Zielgateway und stellen eine Verbindung ohne Wallet (TLS) her:
-
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 im Datenbanklink verwendet wird (auf die über das Oracle AI Database-Gateway zugegriffen wird).Geben Sie den Parameter
credential_namean.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.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 zum Zielgateway mit
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.Beispiel:
BEGIN DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK( db_link_name => 'SALESLINK', hostname => '*example.com*', port => '1522', service_name => '*example_service_name*', ssl_server_cert_dn => '*ssl_server_cert_dn*', credential_name => 'DB_LINK_CRED', directory_name => NULL, gateway_link => TRUE, private_target => TRUE, gateway_params => NULL); END; /Der Parameter
ssl_server_cert_dnist optional, wenn die Verbindung als TCP-basierter Datenbanklink (ohne Wallet) erstellt wird.Wenn
directory_nameNULList, wird die Verbindung als TCP-basierter Datenbanklink (ohne Wallet) erstellt.Der Parameter
private_targetmuss aufTRUEgesetzt werden, wenn sich das nicht von Oracle AI Database stammende Ziel auf einem privaten Endpunkt befindet (das heißt, der Datenbanklink greift auf einen Hostnamen zu, der in einem VCN-DNS-Server aufgelöst werden muss). Wennprivate_targetTRUEist, muss der Parameterhostnameein einzelner Hostname sein (auf einem privaten Endpunkt, der eine IP-Adresse, eine SCAN-IP oder einen SCAN-Hostnamen verwendet, wird nicht unterstützt).Wenn
gateway_linkTRUEundgateway_paramsNULList, gibt dies an, dass der Datenbanklink zu einem vom Kunden verwalteten Oracle Gateway gehört.Andere Benutzer als ADMIN benötigen Berechtigungen zum Ausführen von
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. -
Verwenden Sie den Datenbanklink, den Sie erstellt haben, um auf Daten im Zielgateway zuzugreifen.
Beispiel:
SELECT * FROM employees@SALESLINK;
Bei den Zugangsdaten, die Sie in Schritt 1 erstellen, können Sie die Zugangsdaten des Oracle AI Database-Gateways 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;
/wobei password das neue Passwort ist.
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 hier:
Datenbanklinks mit Vom Kunden verwalteter heterogener Konnektivität zu Nicht-Oracle AI-Datenbanken auf einem privaten Endpunkt (mit einem Wallet) erstellen
Sie können Datenbanklinks von einer autonomen KI-Datenbankinstanz zu einem Oracle AI Database-Gateway erstellen, um auf Nicht-Oracle-Datenbanken zuzugreifen, die sich auf einem privaten Endpunkt befinden und sich entweder mit einem Wallet (TCPS) oder ohne Wallet (TLS) verbinden.
So erstellen Sie Datenbanklinks von einer autonomen KI-Datenbankinstanz auf einem privaten Endpunkt zu einem Oracle AI Database-Zielgateway und stellen eine Verbindung ohne Wallet her:
-
Kopieren Sie das selbstsignierte Ziel-Wallet von Oracle AI Database Gateway in den Objektspeicher. Beispiel: Kopieren Sie
cwallet.sso, das die Zertifikate für das Oracle AI Database Gateway enthält, in den Objektspeicher.Die Wallet-Datei bietet zusammen mit der Datenbankbenutzer-ID und dem Kennwort Zugriff auf Daten, die über das Zielgateway verfügbar sind. 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 *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 selbstsignierte Wallet des Zielgateways 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 this example, `namespace-string` is the Oracle Cloud Infrastructure object storage namespace and `bucketname` is the bucket name. See [Understanding Object Storage Namespaces](https://docs.cloud.oracle.com/iaas/Content/Object/Tasks/understandingnamespaces.htm) for more information.
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 das Zielgateway.
-
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 im Datenbanklink verwendet wird (auf die über das Oracle AI Database-Gateway zugegriffen wird).Geben Sie den Parameter
credential_namean.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.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 zum Zielgateway mit
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.Beispiel:
BEGIN DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK( db_link_name => 'SALESLINK', hostname => '*example.com*', port => '1522', service_name => '*example_service_name*', ssl_server_cert_dn => '*ssl_server_cert_dn*', credential_name => 'DB_LINK_CRED', directory_name => '*DBLINK_WALLET_DIR*', gateway_link => TRUE, private_target => TRUE, gateway_params => NULL); END; /Wenn
directory_namenichtNULList, wird ein TCPS-basierter Datenbanklink erstellt.Der Parameter
private_targetmuss aufTRUEgesetzt werden, wenn sich das nicht von Oracle AI Database stammende Ziel auf einem privaten Endpunkt befindet (das heißt, der Datenbanklink greift auf einen Hostnamen zu, der in einem VCN-DNS-Server aufgelöst werden muss). Wennprivate_targetTRUEist, muss der Parameterhostnameein einzelner Hostname sein (auf einem privaten Endpunkt, der eine IP-Adresse, eine SCAN-IP oder einen SCAN-Hostnamen verwendet, wird nicht unterstützt).Wenn
gateway_linkTRUEundgateway_paramsNULList, gibt dies an, dass der Datenbanklink zu einem vom Kunden verwalteten Oracle Gateway gehört.Andere Benutzer als ADMIN benötigen Berechtigungen zum Ausführen von
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. -
Verwenden Sie den Datenbanklink, den Sie erstellt haben, um auf Daten im Zielgateway zuzugreifen.
Beispiel:
SELECT * FROM employees@SALESLINK;
Bei den Zugangsdaten, die Sie in Schritt 5 erstellen, können Sie die Zugangsdaten für das Oracle AI Database-Gateway 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;
/wobei password das neue Passwort ist.
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 hier: