Créer des liens de base de données à partir d'une base de données IA autonome vers Oracle Database sur un point d'extrémité privé
Vous pouvez créer des liens de base de données à partir d'une base de données d'intelligence artificielle autonome vers une base de données Oracle Database cible qui se trouve sur un point d'extrémité privé.
Note : Les liens de base de données d'une base de données Oracle cible qui se trouve sur un point d'extrémité privé ne sont pris en charge que dans les régions commerciales et les régions du gouvernement américain. Cette fonction est activée par défaut dans toutes les régions commerciales. Cette fonction est activée par défaut dans les régions gouvernementales des États-Unis pour les nouvelles bases de données provisionnées. Pour les bases de données gouvernementales existantes des États-Unis sur un point d'extrémité privé, si vous voulez créer des liens de base de données à partir d'une base de données d'intelligence artificielle autonome vers une cible dans une région du gouvernement des États-Unis, vous pouvez soumettre une demande de service au soutien technique d'Oracle Cloud et demander l'activation du point d'extrémité privé dans la fonction de liaison de base de données des régions gouvernementales. Les régions du gouvernement américain sont les suivantes :
Selon le type et la configuration de la base de données Oracle cible :
-
Une autre base de données Oracle Database, telle qu'une base de données sur place ou Database Cloud Service, sur un point d'extrémité privé configuré pour SSL (TCPS) : Dans ce cas, vous pouvez créer le lien de base de données avec un portefeuille et le lien de base de données communique avec TCPS. Pour plus de détails, voir Créer des liens de base de données à partir d'une base de données d'intelligence artificielle autonome vers des bases de données Oracle sur un point d'extrémité privé avec un portefeuille (mTLS).
-
Oracle Database, par exemple une base de données sur place ou Database Cloud Service, sur un point d'extrémité privé configuré pour TCP : Dans ce cas, vous créez le lien de base de données sans portefeuille et le lien de base de données communique avec TCP. Pour plus de détails, voir Créer des liens de base de données vers des bases de données Oracle sur un point d'extrémité privé sans portefeuille.
Préalables pour les liens de base de données entre une base de données d'intelligence artificielle autonome et des bases de données Oracle sur un point d'extrémité privé
Répertorie les préalables pour créer des liens de base de données à partir d'une base de données d'intelligence artificielle autonome vers une base de données Oracle cible située sur un point d'extrémité privé.
Pour créer un lien de base de données vers une base de données Oracle cible sur un point d'extrémité privé :
-
La base de données cible doit être accessible à partir du VCN Oracle Cloud Infrastructure de la base de données source. Par exemple, vous pouvez vous connecter à la base de données cible lorsque :
-
La base de données cible se trouve sur un point d'extrémité privé.
-
La base de données source et la base de données cible se trouvent toutes les deux dans le même VCN Oracle Cloud Infrastructure.
-
La base de données source et la base de données cible se trouvent dans différents réseaux en nuage virtuels Oracle Cloud Infrastructure qui sont appariés.
-
La base de données cible est une base de données sur place connectée au réseau VCN Oracle Cloud Infrastructure de la base de données source à l'aide de FastConnect ou d'un RPV.
-
-
Il existe deux options pour spécifier la base de données cible, utilisez le paramètre
hostnameou le paramètrerac_hostnames:-
Pour une cible sur un point d'extrémité privé,
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKprend en charge la spécification d'un nom d'hôte unique avec le paramètrehostname. Sur un point d'extrémité privé, l'utilisation d'une adresse IP, d'une adresse IP SCAN ou d'un nom d'hôte SCAN n'est pas prise en charge (lorsque la cible se trouve sur un point d'extrémité public,CREATE_DATABASE_LINKprend en charge l'utilisation d'une adresse IP, d'une adresse IP SCAN ou d'un nom d'hôte SCAN). -
Lorsque la cible est une base de données Oracle RAC, utilisez le paramètre
rac_hostnamespour spécifier un ou plusieurs noms d'hôte avecDBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Vous pouvez ainsi tirer parti des fonctionnalités de haute disponibilité d'Oracle RAC. L'utilisation d'une adresse IP, d'une adresse IP SCAN ou d'un nom d'hôte SCAN dans la valeurrac_hostnamesn'est pas prise en charge.Lorsque vous spécifiez une liste de noms d'hôte dans le paramètre
rac_hostnames,CREATE_DATABASE_LINKutilise tous les noms d'hôte spécifiés comme adresses dans la chaîne de connexion. Si l'un des hôtes spécifiés n'est pas disponible dans la base de données Oracle RAC cible, Autonomous Database tente automatiquement de se connecter à l'aide d'un autre nom d'hôte de la liste.
-
-
Les règles de trafic entrant et sortant suivantes doivent être définies pour le point d'extrémité privé :
-
Définissez une règle de trafic sortant dans la liste de sécurité du sous-réseau ou le groupe de sécurité de réseau de la base de données source afin que le trafic sur TCP soit autorisé vers l'adresse IP et le numéro de port de la base de données cible.
-
Définissez une règle de trafic entrant dans la liste de sécurité du sous-réseau ou le groupe de sécurité de réseau de la base de données cible afin que le trafic sur TCP soit autorisé entre l'adresse IP de la base de données source et le port de destination.
-
Créer des liens de base de données vers des bases de données Oracle sur un point d'extrémité privé sans portefeuille
Utilisez DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK pour créer des liens de base de données à partir d'une base de données d'intelligence artificielle autonome vers une base de données Oracle cible située sur un point d'extrémité privé et vous connecter sans portefeuille (TCP).
Note : Cette option concerne les bases de données Oracle cibles qui se trouvent sur un point d'extrémité privé et pour lesquelles SSL/TCPS n'est pas configuré.
Effectuez les étapes préalables, au besoin. Pour plus de détails, voir Préalables pour les liens de base de données entre une base de données d'intelligence artificielle autonome et des bases de données Oracle sur un point d'extrémité privé.
Pour créer un lien de base de données vers une base de données cible sur un point d'extrémité privé à l'aide d'une connexion TCP sécurisée sans portefeuille :
-
Dans la base de données d'intelligence artificielle autonome, créez des données d'identification pour accéder à la base de données cible. Les données d'identification
usernameetpasswordque vous spécifiez avecDBMS_CLOUD.CREATE_CREDENTIALsont celles de la base de données cible utilisée dans le lien de base de données (où la base de données cible est accessible au moyen du VCN).Par exemple :
BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'PRIVATE_ENDPOINT_CRED', username => 'NICK', password => '*password*' ); END; /Les caractères du paramètre
usernamedoivent être toutes des lettres majuscules.Cette opération stocke les données d'identification dans la base de données dans un format chiffré. Vous pouvez utiliser n'importe quel nom pour les données d'identification.
-
Créez le lien de base de données vers la base de données cible à l'aide de
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.Par exemple :
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; /Pour une cible sur un point d'extrémité privé,
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKprend en charge la spécification d'un nom d'hôte unique avec le paramètrehostname. Sur un point d'extrémité privé, l'utilisation d'une adresse IP, d'une adresse IP SCAN ou d'un nom d'hôte SCAN n'est pas prise en charge (lorsque la cible se trouve sur un point d'extrémité public,CREATE_DATABASE_LINKprend en charge l'utilisation d'une adresse IP, d'une adresse IP SCAN ou d'un nom d'hôte SCAN).Lorsque la cible est une base de données Oracle RAC, utilisez le paramètre
rac_hostnamespour spécifier un ou plusieurs noms d'hôte avecDBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Vous pouvez ainsi tirer parti des fonctionnalités de haute disponibilité d'Oracle RAC. L'utilisation d'une adresse IP, d'une adresse IP SCAN ou d'un nom d'hôte SCAN dans la valeurrac_hostnamesn'est pas prise en charge.Par exemple, avec une base de données Oracle RAC cible, utilisez le paramètre
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_LINKne prend pas en charge la valeurlocalhostpourhostnameou dans le paramètrerac_hostnames.Les utilisateurs autres qu'ADMIN ont besoin de privilèges pour exécuter
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.Comme illustré dans l'exemple, pour créer un lien de base de données avec
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKvers une base de données cible sur un point d'extrémité privé à l'aide d'une connexion TCP sécurisée sans portefeuille, tous les éléments suivants sont requis :-
Le paramètre
directory_namedoit êtreNULL. -
Le paramètre
ssl_server_cert_dndoit êtreNULL. -
Le paramètre
private_targetdoit êtreTRUE.
-
-
Utilisez le lien de base de données que vous avez créé pour accéder aux données de la base de données cible.
Par exemple :
SELECT * FROM employees@PRIVATE_ENDPOINT_LINK;
Pour les données d'identification que vous créez à l'étape 1, les données d'identification Oracle Database, si le mot de passe de l'utilisateur cible change, vous pouvez mettre à jour les données d'identification qui contiennent les données d'identification de l'utilisateur cible comme suit :
BEGIN
DBMS_CLOUD.UPDATE_CREDENTIAL (
credential_name => 'DB_LINK_CRED',
attribute => 'PASSWORD',
value => '*password*');
END;
/
Où mot de passe est le nouveau mot de passe.
Après cette opération, les liens de base de données existants qui utilisent ces données d'identification continuent de fonctionner sans avoir à supprimer et à recréer les liens de base de données.
Pour plus d'informations, voir Procédure CREATE_DATABASE_LINK.
Créer des liens de base de données à partir d'une base de données d'intelligence artificielle autonome vers des bases de données Oracle sur un point d'extrémité privé avec un portefeuille (mTLS)
Vous pouvez créer des liens de base de données à partir d'une base de données d'intelligence artificielle autonome vers une base de données Oracle cible qui se trouve sur un point d'extrémité privé.
Note : Cette option concerne les bases de données Oracle cibles pour lesquelles SSL/TCPS est configuré et qui se trouvent sur un point d'extrémité privé.
Si SSL/TCPS n'est pas configuré dans la base de données Oracle cible, vous disposez de deux options :
-
Vous pouvez configurer la base de données Oracle cible pour qu'elle utilise l'authentification TCP/IP avec SSL (TCPS). Voir Configuration de l'authentification de sécurité de la couche de transport dans le guide de sécurité d'Oracle Database 19c ou le guide de sécurité d'Oracle Database 26ai pour plus d'informations sur la configuration de SSL/TCPS.
-
Vous pouvez vous connecter à la base de données Oracle cible avec TCP. Pour plus de détails, voir Créer des liens de base de données vers des bases de données Oracle sur un point d'extrémité privé sans portefeuille.
Effectuez les étapes préalables, au besoin. Pour plus de détails, voir Préalables pour les liens de base de données entre une base de données d'intelligence artificielle autonome et des bases de données Oracle sur un point d'extrémité privé.
Pour créer un lien de base de données vers une base de données Oracle cible sur un point d'extrémité privé à l'aide de l'authentification TCP/IP avec SSL (TCPS) :
-
Copiez le portefeuille de la base de données cible,
cwallet.sso, contenant les certificats de la base de données cible dans le magasin d'objets.Note : Le fichier de portefeuille, ainsi que l'ID utilisateur et le mot de passe de la base de données, permettent d'accéder aux données de la base de données Oracle cible. Conservez les fichiers de portefeuille dans un emplacement sécurisé. Partagez les fichiers de portefeuille uniquement avec les utilisateurs autorisés.
-
Créez des données d'identification pour accéder au magasin d'objets où vous stockez
cwallet.sso. Voir Procédure CREATE_CREDENTIAL pour plus d'informations sur les paramètres de nom d'utilisateur et de mot de passe pour différents services de stockage d'objets. -
Créez un répertoire dans Autonomous AI Database pour le fichier de portefeuille
cwallet.sso.Par exemple :
CREATE DIRECTORY *wallet_dir* AS '*directory_path_of_your_choice*';Voir Créer un répertoire dans Autonomous AI Database pour plus d'informations sur la création de répertoires.
-
Utilisez
DBMS_CLOUD.GET_OBJECTpour charger le portefeuille de base de données cible dans le répertoire que vous avez créé à l'étape précédente, WALLET_DIR.Par exemple :
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; /Dans cet exemple,
*namespace-string*est l'espace de noms du stockage d'objets Oracle Cloud Infrastructure etbucketnameest le nom du seau. Pour plus d'informations, voir Présentation des espaces de noms du stockage d'objets.Note : La valeur
credential_nameque vous utilisez à cette étape correspond aux données d'identification pour le magasin d'objets. À l'étape suivante, vous créez les données d'identification pour accéder à la base de données cible. -
Dans la base de données d'intelligence artificielle autonome, créez des données d'identification pour accéder à la base de données cible. Les données d'identification
usernameetpasswordque vous spécifiez avecDBMS_CLOUD.CREATE_CREDENTIALsont celles de la base de données cible utilisée dans le lien de base de données (où la base de données cible est accessible au moyen du VCN).Note : La fourniture du paramètre
credential_nameest requise.Par exemple :
BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'DB_LINK_CRED', username => 'NICK', password => '*password*'); END; /Les caractères du paramètre
usernamedoivent être toutes des lettres majuscules.Cette opération stocke les données d'identification dans la base de données dans un format chiffré. Vous pouvez utiliser n'importe quel nom pour les données d'identification.
-
Créez le lien de base de données vers la base de données cible à l'aide de
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.Par exemple :
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; /Pour une cible sur un point d'extrémité privé,
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKprend en charge la spécification d'un nom d'hôte unique avec le paramètrehostname. Sur un point d'extrémité privé, l'utilisation d'une adresse IP, d'une adresse IP SCAN ou d'un nom d'hôte SCAN n'est pas prise en charge (lorsque la cible se trouve sur un point d'extrémité public,CREATE_DATABASE_LINKprend en charge l'utilisation d'une adresse IP, d'une adresse IP SCAN ou d'un nom d'hôte SCAN).Lorsque la cible est une base de données Oracle RAC, utilisez le paramètre
rac_hostnamespour spécifier un ou plusieurs noms d'hôte avecDBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Vous pouvez ainsi tirer parti des fonctionnalités de haute disponibilité d'Oracle RAC. L'utilisation d'une adresse IP, d'une adresse IP SCAN ou d'un nom d'hôte SCAN dans la valeurrac_hostnamesn'est pas prise en charge.Par exemple, avec une base de données Oracle RAC cible, utilisez le paramètre
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_LINKne prend pas en charge la valeurlocalhostpourhostnameou dans le paramètrerac_hostnames.Les utilisateurs autres qu'ADMIN ont besoin de privilèges pour exécuter
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. -
Utilisez le lien de base de données que vous avez créé pour accéder aux données de la base de données cible.
Par exemple :
``sql SELECT * FROM employees@PEDBLINK1;
Pour les données d'identification que vous créez à l'étape 5, les données d'identification Oracle Database, si le mot de passe de l'utilisateur cible change, vous pouvez mettre à jour les données d'identification qui contiennent les données d'identification de l'utilisateur cible comme suit :
BEGIN
DBMS_CLOUD.UPDATE_CREDENTIAL (
credential_name => 'DB_LINK_CRED',
attribute => 'PASSWORD',
value => '*password*');
END;
/
Où mot de passe est le nouveau mot de passe.
Après cette opération, les liens de base de données existants qui utilisent ces données d'identification continuent de fonctionner sans avoir à supprimer et à recréer les liens de base de données.
Pour plus d'informations, voir Procédure CREATE_DATABASE_LINK.
Notes sur les liens de base de données avec Oracle Database cible
Fournit des notes pour la création de liens de base de données vers une base de données Oracle cible (lorsque la cible n'est pas une base de données d'intelligence artificielle autonome)
Notes relatives aux liens de base de données vers d'autres bases Oracle :
-
Un seul fichier de portefeuille est valide par répertoire à utiliser avec les liens de base de données. Vous ne pouvez charger qu'une seule
cwallet.ssoà la fois dans le répertoire choisi pour les fichiers de portefeuille (par exemple DBLINK_WALLET_DIR). Cela signifie qu'aveccwallet.ssodans DBLINK_WALLET_DIR, vous pouvez uniquement créer des liens de base de données vers les bases de données pour lesquelles le portefeuille de ce répertoire est valide. Pour utiliser plusieurs fichierscwallet.ssoavec des liens de base de données, vous devez créer des répertoires supplémentaires et placer chaque fichiercwallet.ssodans un répertoire différent. Lorsque vous créez des liens de base de données avecDBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK, spécifiez le répertoire qui contient le portefeuille avec le paramètredirectory_name.Voir Créer un répertoire dans Autonomous AI Database pour plus d'informations sur la création de répertoires.
-
Les versions de base de données Oracle cible prises en charge pour les liens de base de données vers une autre base Oracle Database sont : 19c, 12.2.0 et 12.1.0.
Note : Pour obtenir des informations complètes sur les versions prises en charge, voir Matrice de soutien à l'interopérabilité du serveur client pour différentes versions d'Oracle (ID document 207303.1)
-
La base de données autonome d'IA règle le paramètre
SEC_CASE_SENSITIVE_LOGONàtrueet cette valeur ne peut pas être modifiée. Si votre base de données cible n'est pas une base de données d'intelligence artificielle autonome, vous devez définir SEC_CASE_SENSITIVE_LOGONparameter totrueon the target database. IfSEC_CASE_SENSITIVE_LOGONis set tofalseon the target database, then errorORA-28040 : Aucun protocole d'authentification correspondant n'est généré. -
Pour lister les liens de base de données, utilisez la vue
ALL_DB_LINKS. Pour plus d'informations, voir ALL_DB_LINKS dans Informations de référence sur les bases de données Oracle Database 19c ou Informations de référence sur les bases de données Oracle Database 26ai. -
Le fichier de portefeuille, ainsi que l'ID utilisateur et le mot de passe de la base de données, permettent d'accéder aux données de la base Oracle cible. Conservez les fichiers de portefeuille dans un emplacement sécurisé. Partagez les fichiers de portefeuille uniquement avec les utilisateurs autorisés.
-
Lorsque l'instance de base de données du service d'intelligence artificielle autonome se trouve sur un point d'extrémité privé, deux options s'offrent à vous pour spécifier la base de données cible : utilisez le paramètre
hostnameou le paramètrerac_hostnames:-
Pour une cible sur un point d'extrémité privé,
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKprend en charge la spécification d'un nom d'hôte unique avec le paramètrehostname. Sur un point d'extrémité privé, l'utilisation d'une adresse IP, d'une adresse IP SCAN ou d'un nom d'hôte SCAN n'est pas prise en charge (lorsque la cible se trouve sur un point d'extrémité public,CREATE_DATABASE_LINKprend en charge l'utilisation d'une adresse IP, d'une adresse IP SCAN ou d'un nom d'hôte SCAN). -
Lorsque la cible est une base de données Oracle RAC, utilisez le paramètre
rac_hostnamespour spécifier un ou plusieurs noms d'hôte avecDBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Vous pouvez ainsi tirer parti des fonctionnalités de haute disponibilité d'Oracle RAC. L'utilisation d'une adresse IP, d'une adresse IP SCAN ou d'un nom d'hôte SCAN dans la valeurrac_hostnamesn'est pas prise en charge.Lorsque vous spécifiez une liste de noms d'hôte dans le paramètre
rac_hostnames,CREATE_DATABASE_LINKutilise tous les noms d'hôte spécifiés comme adresses dans la chaîne de connexion. Si l'un des hôtes spécifiés n'est pas disponible dans la base de données Oracle RAC cible, Autonomous Database tente automatiquement de se connecter à l'aide d'un autre nom d'hôte de la liste. -
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKne prend pas en charge la valeurlocalhostpourhostnameou dans le paramètrerac_hostnames.
-