Remarque :

Cloner une base de données pluggable en ligne à distance entre les systèmes de base de données dans Oracle Base Database Service à l'aide du lien de base de données

Introduction

Vous pouvez créer des clones de vos bases de données pluggables dans la même base de données (base de données Conteneur) d'un système de base de données. Cette opération est appelée clonage local. Vous pouvez y parvenir facilement à l'aide de la console. Vous pouvez également cloner une base de données pluggable vers une autre base de données (base de données Conteneur) d'un autre système de base de données. Cette opération est appelée clonage à distance.

Le clonage distant nécessite deux systèmes de base de données, car chaque système ne prend en charge qu'une seule base de données (base de données Conteneur). Le clonage à distance de la base de données pluggable n'est pas encore disponible sur la console. Vous pouvez créer un clone distant à l'aide de l'API RemoteclonePluggabledatabase, à l'aide d'un lien de base de données et des outils basés sur l'API, y compris l'interface de ligne de commande OCI, les kits SDK et Terraform.

Ce tutoriel vous indique les étapes à suivre pour cloner une base de données pluggable à distance à l'aide d'un lien de base de données sur Oracle Base Database Service.

Objectifs

Clonage en ligne à distance d'une base de données pluggable vers un autre système de base de données dans Oracle Base Database Service à l'aide d'un lien de base de données.

Prérequis

  1. Compréhension d'Oracle Base Database Service.
  2. Deux services de base de données Oracle Base au sein du même VCN ou de différents réseaux cloud virtuels.
  3. Appairage VCN si ces systèmes de base de données se trouvent sur un appairage VCN VCN différent.
  4. Vous trouverez ci-dessous les noms d'environnement utilisés dans ce tutoriel pour faciliter la compréhension.
    • Nom du système de base de données source : SOURCE
    • Nom du système de base de données de destination : TARGET
    • Nom de la base pluggable source : SOURCE_PDB1
    • Cloner le nom de la base pluggable : CLONE_PDB1

Tâche 1 : préparation de l'environnement source

  1. Créez un utilisateur à des fins de clonage sur la base Conteneur source à l'aide de la commande suivante.

    CREATE USER c##clone IDENTIFIED BY <PASSWORD> CONTAINER=ALL;
    GRANT CREATE SESSION, CREATE PLUGGABLE DATABASE TO c##clone CONTAINER=ALL;
    
  2. Vérifiez le contenu de l'objet dans la base de données pluggable source : dans cet exemple, nous examinons la table TEST.PERSONS pour référence.

    • Nom du schéma : TEST

    • Nom de la table : PERSONS

      Détails de l'objet de base de données pluggable source

Tâche 2 : Préparer l'environnement de destination

  1. Assurez-vous qu'local_undo_enabled est défini sur True sur la base de données Conteneur de destination.

  2. Assurez-vous que la base de données Conteneur de destination est en mode archivelog.

    Remarque : lorsque la base de données Conteneur de destination est en mode ARCHIVELOG et MODE UNDO LOCAL, la base de données pluggable source peut être ouverte en mode lecture/écriture et opérationnelle pendant le processus de clonage. Cette technique est appelée clonage à chaud.

    Vérifier les détails du journal d'archivage et de l'annulation locale de la base de données Conteneur cible

  3. Mettez à jour l'adresse du nom de service de base de données Conteneur source dans le fichier tnsnames.ora situé dans le répertoire $ORACLE_HOME/network/admin/ sur le noeud de système de base de données de destination.

    <addressname> =
    (DESCRIPTION =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(Host = <hostname>)(Port = <port>))
      )
    (CONNECT_DATA =
      (SERVICE_NAME = <service_name>)
    )
    )
    

    Exemple complet :

    SOURCE_CDB =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = source.**************.*****.oraclevcn.com)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = SOURCE_iad1zr.**************.*****.oraclevcn.com)
        )
      )
    
  4. Créez un lien de base de données sur la base Conteneur de destination pointant vers la base Conteneur source.

    CREATE PUBLIC DATABASE LINK clone_pdb_dblink CONNECT TO c##clone identified by <PASSWORD> using '<ADDRESSNAME>';
    
    CREATE PUBLIC DATABASE LINK clone_pdb_dblink CONNECT TO c##clone identified by ************** using 'SOURCE_CDB';
    
  5. Vérifiez si la connectivité via le lien de base de données fonctionne correctement sur la base Conteneur de destination. Etant donné que nous n'utilisons pas le lien de base de données portant le même nom que la base de données à laquelle il se connecte, nous devons également définir global_names parameter sur False. Sinon, vous rencontrerez une erreur ORA-02085.

    alter session set global_names=false;
    
    select * from dual@clone_pdb_dblink;
    

    Interroger via dblink

Tâche 3 : clonage d'une base pluggable distante

  1. Il est temps de cloner la base de données pluggable source dans la base de données Conteneur de destination en vous connectant à la base de données Conteneur de destination. Indiquez la valeur TDE_WALLET_PASSWORD de l'environnement de destination.

    alter session set global_names=false;
    
    create pluggable database <CLONE_PDB_NAME> from <SOURCE_PDB_NAME>@<DB_LINK_NAME> keystore identified by <TDE_WALLET_PASSWORD>;
    
    create pluggable database CLONE_PDB1 from SOURCE_PDB1@clone_pdb_dblink keystore identified by <TDE_WALLET_PASSWORD>;
    

    Créer un clone de base pluggable sur une base Conteneur cible

  2. Ouvrez la base pluggable clonée en mode lecture/écriture. Une fois que vous avez créé la base de données pluggable, elle est en mode monté. Vous devez ouvrir la nouvelle base de données pluggable clonée en mode lecture/écriture pour qu'Oracle Database termine l'intégration de la nouvelle base de données pluggable dans la base de données Conteneur de destination.

    alter pluggable database CLONE_PDB1 open read write;
    
  3. Vérifiez si toutes les données d'objet sont clonées sur la base pluggable clone :

    Vérifier la base de données pluggable clonée

Nous voyons que les données ont été copiées à partir de la base pluggable source vers la base pluggable clone sur le système de base de données de destination.

Remerciements

Ressources de formation supplémentaires

Explorez d'autres ateliers sur docs.oracle.com/learn ou accédez à davantage de contenu de formation gratuit sur le canal Oracle Learning YouTube. En outre, accédez à education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.

Pour consulter la documentation produit, consultez Oracle Help Center.