Créer des liens de base de données non TLS d'une base de données Autonomous Database vers une autre base de données Autonomous Database

Vous pouvez créer des liens de base de données non TLS à partir d'une base de données Autonomous Database sur une infrastructure Exadata dédiée vers une base de données Autonomous Database cible située sur un point d'extrémité privé.

Rubriques connexes

Préalables pour les liens de base de données non TLS d'Autonomous Database vers une base de données Autonomous Database cible

Répertorie les préalables à la création de liens de base de données non TLS vers une base de données Autonomous Database cible située sur un point d'extrémité privé.

Pour créer un lien de base de données vers une Autonomous Database 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 dans le même VCN Oracle Cloud Infrastructure.

    • La base de données source et la base de données cible se trouvent dans des réseaux en nuage virtuels Oracle Cloud Infrastructure différents mais appariés.

    • La base de données cible est connectée au VCN Oracle Cloud Infrastructure de la base de données source à l'aide de FastConnect ou d'un RPV.

  • Pour une cible sur un point d'extrémité privé, DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK prend en charge la spécification d'un seul nom d'hôte avec le paramètre hostname. Sur un point d'extrémité privé, l'utilisation d'une adresse IP, d'une 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_LINK prend en charge l'utilisation d'une adresse IP, d'une IP SCAN ou d'un nom d'hôte SCAN).

  • DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK ne prend pas en charge la valeur localhost pour le paramètre hostname.

  • 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 de sorte que le trafic 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 de sorte que le trafic TCP soit autorisé depuis l'adresse IP de la base de données source vers le port de destination.

Créer des liens de base de données non TLS vers une base de données Autonomous Database cible

Vous pouvez créer des liens de base de données non TLS à partir d'une base de données Autonomous Database sur une infrastructure Exadata dédiée vers une base de données Autonomous Database cible située sur un point d'extrémité privé.

Effectuez les étapes préalables éventuellement requises. Pour plus de détails, voir Préalables pour les liens de base de données non TLS entre Autonomous Database et une base de données Autonomous Database cible.

Pour créer un lien de base de données non TLS vers une base de données Autonomous Database cible sur un point d'extrémité privé :

  1. Créez des données d'identification pour accéder à l'instance Autonomous Database cible. Les valeurs username et password que vous spécifiez avec DBMS_CLOUD.CREATE_CREDENTIAL correspondent aux données d'identification 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 username doivent être 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.

  2. 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 => '1521',
             service_name => 'example_high.adb.oraclecloud.com',
             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_LINK prend en charge la spécification d'un seul nom d'hôte avec le paramètre hostname. Sur un point d'extrémité privé, l'utilisation d'une adresse IP, d'une 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_LINK prend en charge l'utilisation d'une adresse IP, d'une IP SCAN ou d'un nom d'hôte SCAN).

    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_LINK vers une base de données cible sur un point d'extrémité privé sans portefeuille, tous les éléments suivants sont requis :

    • La valeur du paramètre port doit être réglée à 1521 pour les connexions non TLS. Toutefois, si un numéro de port de module d'écoute SCAN différent a été choisi lors du provisionnement de la grappe de machines virtuelles autonome, vous devez utiliser ce numéro de port. Pour plus d'informations, voir Créer une grappe de machines virtuelles Exadata autonome.

      Le paramètre directory_name doit être NULL.

    • Le paramètre ssl_server_cert_dn peut être omis ou, s'il est inclus, spécifier une valeur NULL.

    • Le paramètre private_target doit être TRUE.

      Note :

      Le réglage du paramètre private_target à TRUE crée le lien de base de données à l'aide du protocole TCP au lieu de TCPS, ce qui empêche la validation du certificat SSL pendant la connexion.
  3. 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;
                  

Note :

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;
/

password 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 qu'il soit nécessaire de les supprimer et de les créer.

Voir Procédure CREATE_DATABASE_LINK pour plus d'informations.

Notes sur les liens de base de données avec une cible qui est une Autonomous Database

Fournit des notes sur la création de liens de base de données vers une cible qui est une autre Autonomous Database.

Notes sur les liens de base de données vers une autre Autonomous Database :

  • Un seul fichier de portefeuille est valide par répertoire pour une utilisation avec des liens de base de données. Vous ne pouvez charger qu'un seul fichier cwallet.sso à la fois dans le répertoire choisi pour les fichiers de portefeuille (par exemple DBLINK_WALLET_DIR). Autrement dit, lorsque cwallet.sso se trouve dans 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 fichiers cwallet.sso avec des liens de base de données, vous devez créer des répertoires supplémentaires et placer chaque fichier cwallet.sso dans un répertoire différent. Lorsque vous créez des liens de base de données avec DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK, spécifiez le répertoire qui contient le portefeuille à l'aide du paramètre directory_name.

    Voir Créer un répertoire dans la base de données autonome pour plus d'informations sur la création de répertoires.

  • 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 23ai.

  • Le fichier de portefeuille, ainsi que l'ID utilisateur et le mot de passe, permettent l'accès aux données dans Autonomous Database cible. Conservez les fichiers de portefeuille dans un emplacement sécurisé. Partagez les fichiers de portefeuille uniquement avec les utilisateurs autorisés.

  • L'entrée DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK doit mentionner le nom de balayage de la base de données Autonomous Database dédiée cible en tant que paramètre 'hostname'.