Création de liens de base de données autres que TLS d'une instance Autonomous Database vers une autre instance Autonomous Database

Vous pouvez créer des liens de base de données non TLS d'Autonomous Database on Dedicated Exadata Infrastructure vers une base de données Autonomous Database cible située sur une adresse privée.

Rubriques connexes

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

Répertorie les prérequis permettant de créer des liens de base de données non TLS vers une Autonomous Database cible située sur une adresse privée.

Pour créer un lien de base de données vers une Autonomous Database cible sur une adresse privée, procédez comme suit :

  • La base de données cible doit être accessible à partir du réseau cloud virtuel Oracle Cloud Infrastructure de la base de données source. Par exemple, vous pouvez vous connecter à la base de données cible dans les cas suivants :

    • La base de données cible se trouve sur une adresse privée.

    • La base de données source et la base de données cible se trouvent dans le même réseau cloud virtuel Oracle Cloud Infrastructure.

    • La base de données source et la base de données cible se trouvent dans différents réseaux cloud virtuels Oracle Cloud Infrastructure couplé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 VPN.

  • Pour une cible sur une adresse privée, 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 une adresse privée, l'utilisation d'une adresse IP ou d'un nom d'hôte SCAN n'est pas prise en charge (lorsque la cible se trouve sur une adresse publique, CREATE_DATABASE_LINK prend en charge l'utilisation d'une adresse IP, d'une adresse 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 entrantes et sortantes suivantes doivent être définies pour l'adresse privée :

    • Définissez une règle sortante dans la liste de sécurité de sous-réseau ou le groupe de sécurité réseau de la base de données source de sorte que le trafic via 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 entrante dans la liste de sécurité de sous-réseau ou le groupe de sécurité réseau de la base de données cible de sorte que le trafic via TCP soit autorisé de l'adresse IP de la base de données source vers le port de destination.

Création de liens de base de données non TLS vers une instance Autonomous Database cible

Vous pouvez créer des liens de base de données non TLS d'Autonomous Database on Dedicated Exadata Infrastructure vers une Autonomous Database cible située sur une adresse privée.

Effectuez les étapes prérequises, le cas échéant. Pour plus de détails, reportez-vous à Prérequis pour les liens de base de données non-TLS d'Autonomous Database vers une instance Autonomous Database cible.

Pour créer un lien de base de données non TLS vers une Autonomous Database cible sur une adresse privée, procédez comme suit :

  1. Créez des informations d'identification permettant d'accéder à l'instance Autonomous Database cible. Les valeurs username et password que vous indiquez avec DBMS_CLOUD.CREATE_CREDENTIAL correspondent aux informations d'identification de la base de données cible utilisées dans le lien de base de données (où l'accès à la base de données cible est effectué via le réseau cloud virtuel).

    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 en majuscules.

    Cette opération stocke les informations d'identification dans la base de données dans un format crypté. Vous pouvez utiliser n'importe quel nom d'informations 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.

    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 une adresse privée, 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 une adresse privée, l'utilisation d'une adresse IP ou d'un nom d'hôte SCAN n'est pas prise en charge (lorsque la cible se trouve sur une adresse publique, CREATE_DATABASE_LINK prend en charge l'utilisation d'une adresse IP, d'une adresse SCAN ou d'un nom d'hôte SCAN).

    Les utilisateurs autres que l'utilisateur ADMIN nécessitent des privilèges pour exécuter DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Comme indiqué 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 une adresse privée sans portefeuille, tous les éléments suivants sont requis :

    • La valeur du paramètre port doit être définie sur 1521 pour les connexions non TLS. Toutefois, si un numéro de port de processus d'écoute SCAN différent a été choisi lors du provisionnement de la console AVMC, vous devez utiliser ce numéro de port. Pour plus d'informations, reportez-vous à Création d'un cluster de machines virtuelles Exadata Autonomous.

      Le paramètre directory_name doit être défini sur NULL.

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

    • Le paramètre private_target doit être défini sur TRUE.

      Remarques :

      Si vous définissez le paramètre private_target sur TRUE, le lien de base de données est créé à l'aide du protocole TCP au lieu de TCPS, ce qui empêche la validation du certificat SSL lors de 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.

    Exemple :

    SELECT * FROM employees@PRIVATE_ENDPOINT_LINK;
                  

Remarques :

Pour les informations d'identification que vous créez à l'étape 1, les informations d'identification Oracle Database, si le mot de passe de l'utilisateur cible est modifié, vous pouvez mettre à jour les informations d'identification qui contiennent celles 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 informations d'identification continuent de fonctionner sans que vous deviez supprimer et créer à nouveau les liens de base de données.

Pour plus d'informations, reportez-vous à Procédure CREATE_DATABASE_LINK.

Remarques relatives aux liens de base de données avec une cible qui est une instance Autonomous Database

Fournit des remarques sur la création de liens de base de données vers une cible autre qu'Autonomous Database.

Remarques relatives aux liens de base de données vers une autre instance Autonomous Database :

  • Un seul fichier de portefeuille est valide par répertoire pour utilisation avec les liens de base de données. Vous ne pouvez télécharger qu'un seul fichier cwallet.sso à la fois vers le répertoire choisi pour les fichiers de portefeuille (par exemple, DBLINK_WALLET_DIR). Ainsi, avec un fichier cwallet.sso 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, indiquez le répertoire qui contient le portefeuille avec le paramètre directory_name.

    Pour plus d'informations sur la création de répertoires, reportez-vous à Création d'un répertoire dans Autonomous Database.

  • Pour répertorier les liens de base de données, utilisez la vue ALL_DB_LINKS. Pour plus d'informations, reportez-vous à ALL_DB_LINKS dans Référence de base de données Oracle Database 19c ou Référence de base de données Oracle Database 23ai.

  • 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 l'instance Autonomous Database cible. Stockez 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 d'analyse de l'instance Autonomous Database dédiée cible en tant que paramètre de nom d'hôte.