Créer des liens de base de données à partir d'une base de données d'IA autonome vers une base de données d'IA autonome accessible au public

Vous pouvez créer des liens de base de données à partir d'une base de données d'IA autonome vers une base de données d'IA autonome cible qui se trouve sur un point d'extrémité public.

Pour plus d'informations, voir Comment créer un lien de base de données entre votre base de données Autonomous Database et une instance Database Cloud Service.

Créer des liens de base de données à partir d'une base de données d'IA autonome vers une base de données d'IA autonome accessible au public sans portefeuille (TLS)

Vous pouvez créer des liens de base de données à partir d'une base de données d'IA autonome vers une base de données d'IA autonome accessible au public sans portefeuille (TLS).

Pour créer des liens de base de données vers une cible publique, la base de données cible doit être accessible. Certaines bases de données, y compris les bases de données autonomes d'IA, peuvent limiter l'accès (par exemple, en utilisant des listes de contrôle d'accès). Assurez-vous d'activer la base de données cible pour autoriser l'accès à partir de la base de données source pour que le lien de base de données fonctionne. Si vous limitez l'accès avec les listes de contrôle d'accès, vous pouvez trouver l'adresse IP sortante de votre base de données d'IA autonome source et autoriser cette adresse IP à se connecter à votre base de données cible. Lorsque la base de données cible est une autre base de données d'intelligence artificielle autonome, vous pouvez ajouter l'adresse IP sortante de la base de données source à la liste de contrôle d'accès de la base de données cible.

Voir Obtenir les détails de la location pour plus d'informations sur la recherche de l'adresse IP sortante.

Pour créer un lien de base de données vers une base de données d'intelligence artificielle autonome cible sans portefeuille (TLS) :

  1. Si vous ne l'avez pas encore fait, activez les connexions TLS sur votre instance de base de données IA autonome.
  2. Dans l'instance de base de données de l'IA autonome où vous créez le lien de base de données, créez des données d'identification pour accéder à la base de données de l'IA autonome cible. Les données d'identification username et password que vous spécifiez avec DBMS_CLOUD.CREATE_CREDENTIAL sont celles de la base de données cible (vous utilisez ces données d'identification pour créer le lien de base de données).
    Note

    La fourniture du paramètre credential_name est requise.

    Exemple :

    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
            credential_name => 'DB_LINK_CRED',
            username => 'NICK',
            password => 'password' );
    END;
    /

    Les caractères du paramètre username doivent être toutes des lettres majuscules.

    Note

    Vous pouvez utiliser des données d'identification de clé secrète de chambre forte pour les données d'identification de base de données cible dans un lien de base de données. Pour plus d'informations, voir Utiliser les données d'identification de clé secrète de la chambre forte.

    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 le nom des données d'identification.

  3. Créez un lien de base de données vers l'instance de base de données d'intelligence artificielle autonome cible à l'aide de DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Exemple :

    BEGIN
        DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
            db_link_name => 'SALESLINK', 
            hostname => 'adb.eu-frankfurt-1.oraclecloud.com', 
            port => '1521',
            service_name => 'example_medium.adb.example.oraclecloud.com',
            credential_name => 'DB_LINK_CRED',
            directory_name => NULL);
    END;
    /

    Pour créer un lien de base de données avec DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK vers une base de données d'intelligence artificielle autonome cible sur un point d'extrémité public à l'aide d'une connexion TCP sécurisée sans portefeuille, le paramètre directory_name doit être NULL.

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

    Les utilisateurs autres qu'ADMIN ont besoin de privilèges pour exécuter DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

  4. 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@SALESLINK;
                

Pour les données d'identification que vous créez à l'étape 1, les données d'identification de la base de données cible, 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;
/

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.

Note

Vous pouvez créer des liens vers le service de mégadonnées à l'aide de DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Pour plus d'informations, voir Interroger les données Hadoop (HDFS) du service de mégadonnées à partir d'une base de données autonome d'IA.

Pour plus d'informations, voir :

Créer des liens de base de données à partir d'une base de données d'IA autonome vers une base de données d'IA autonome accessible au public à l'aide d'un portefeuille (mTLS)

Vous pouvez créer des liens de base de données à partir d'une base de données IA autonome vers une base de données IA autonome accessible au public avec un portefeuille (mTLS).

Pour créer des liens de base de données vers une cible publique, la base de données cible doit être accessible. Certaines bases de données, y compris les bases de données autonomes d'IA, peuvent limiter l'accès (par exemple, en utilisant des listes de contrôle d'accès). Assurez-vous d'activer la base de données cible pour autoriser l'accès à partir de la base de données source pour que le lien de base de données fonctionne. Si vous limitez l'accès avec les listes de contrôle d'accès, vous pouvez trouver l'adresse IP sortante de votre base de données d'IA autonome source et autoriser cette adresse IP à se connecter à votre base de données cible. Par exemple, si la base de données cible est une autre base de données d'intelligence artificielle autonome, vous pouvez ajouter l'adresse IP sortante de la base de données source à la liste de contrôle d'accès de la base de données cible.

Voir Obtenir les détails de la location pour plus d'informations sur la recherche de l'adresse IP sortante.

Pour créer des liens de base de données vers une base de données d'intelligence artificielle autonome cible avec un portefeuille (mTLS) :

  1. 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.

    Notez ce qui suit pour le fichier de portefeuille :

    • 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 dans Oracle Database cible. Conservez les fichiers de portefeuille dans un emplacement sécurisé. Partagez les fichiers de portefeuille uniquement avec les utilisateurs autorisés.

    • Ne renommez pas le fichier de portefeuille. Le fichier de portefeuille dans le stockage d'objets doit être nommé cwallet.sso.

  2. Créez des données d'identification pour accéder au magasin d'objets où vous stockez le fichier de portefeuille 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.

    La création de données d'identification pour accéder au magasin d'objets Oracle Cloud Infrastructure n'est pas requise si vous activez les données d'identification du principal de ressource. Pour plus d'informations, voir Utiliser un principal de ressource pour accéder aux ressources Oracle Cloud Infrastructure.

  3. Créez un répertoire dans Autonomous AI Database pour le fichier de portefeuille cwallet.sso.

    Exemple :

    CREATE DIRECTORY dblink_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.

  4. Utilisez DBMS_CLOUD.GET_OBJECT pour charger le portefeuille de base de données cible dans le répertoire que vous avez créé à l'étape précédente, DBLINK_WALLET_DIR.

    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 => 'DBLINK_WALLET_DIR'); 
    END;
    /

    Dans cet exemple, namespace-string est l'espace de noms du stockage d'objets pour Oracle Cloud Infrastructure et bucketname est le nom du seau. Pour plus d'informations, voir Présentation des espaces de noms du stockage d'objets.

    Note

    La valeur credential_name que vous utilisez à cette étape est les 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.

    La création de données d'identification pour accéder au magasin d'objets Oracle Cloud Infrastructure n'est pas requise si vous activez les données d'identification du principal de ressource. Pour plus d'informations, voir Utiliser un principal de ressource pour accéder aux ressources Oracle Cloud Infrastructure.

  5. Dans l'instance Autonomous AI Database, créez des données d'identification pour accéder à la base de données cible. Les données d'identification username et password que vous spécifiez avec DBMS_CLOUD.CREATE_CREDENTIAL sont celles de la base de données cible que vous utilisez pour créer le lien de base de données.
    Note

    La fourniture du paramètre credential_name est requise.

    Exemple :

    BEGIN
        DBMS_CLOUD.CREATE_CREDENTIAL(
            credential_name => 'DB_LINK_CRED',
            username => 'NICK',
            password => 'password');
    END;
    /

    Les caractères du paramètre username doivent être toutes des lettres majuscules.

    Note

    Vous pouvez utiliser des données d'identification de clé secrète de chambre forte pour les données d'identification de base de données cible dans un lien de base de données. Pour plus d'informations, voir Utiliser les données d'identification de clé secrète de la chambre forte.

    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 le nom des données d'identification.

  6. 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 => '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;
    /

    Les utilisateurs autres qu'ADMIN ont besoin de privilèges pour exécuter DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Si le fichier de portefeuille dans le répertoire spécifié avec directory_name n'est pas cwallet.sso, la procédure signale une erreur telle que : ORA-28759: failure to open file.

  7. 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@SALESLINK;
                

Pour les données d'identification que vous créez à l'étape 5, les données d'identification de la base de données cible, 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;
/

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.

Note

Vous pouvez créer des liens vers le service de mégadonnées à l'aide de DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Pour plus d'informations, voir Interroger les données Hadoop (HDFS) du service de mégadonnées à partir d'une base de données autonome d'IA.

Pour plus d'informations, voir :