Réplication de données d'Azure SQL Managed Instance vers Autonomous Transaction Processing

Découvrez comment répliquer des données d'une instance gérée par Azure SQL vers une instance Autonomous Database à l'aide d'OCI GoldenGate.

Avant de commencer

Pour mener à bien ce démarrage rapide, vous devez :
  1. Créez une ressource d'instance gérée Azure SQL.
  2. Configurez l'instance gérée SQL Azure pour autoriser les connexions publiques.
  3. Connectez-vous à une instance gérée par SQL Azure à l'aide d'un client SQL, puis procédez comme suit :
    1. Création d'un utilisateur GGADMIN :
      CREATE login GGADMIN with password = 'W3lcome@1234'
      Create user GGADMIN for login GGADMIN
      ALTER SERVER ROLE sysadmin ADD MEMBER GGADMIN

      Remarques :

      Le rôle sysadmin est uniquement requis pour ajouter TRANDATA et Heartbeat tables. Vous pouvez ensuite supprimer les privilèges sysadmin et utiliser db_owner: ALTER ROLE db_owner ADD MEMBER GGADMIN; à la place.
    2. Créer une base de données:
      Create database SRC_OCIGGLL
    3. Déconnectez-vous et reconnectez-vous en tant qu'utilisateur nouvellement créé (GGADMIN) et base de données (SRC_OCIGGLL).
    4. Activez l'extraction différentielle (CDC) au niveau de la base de données :
      EXECUTE sys.sp_cdc_enable_db
    5. Créez le schéma :
      Create schema GGADMIN
    6. Exécuter le script SQL.
  4. Configurer Autonomous Transaction Processing :
    1. Téléchargez et décompressez le schéma échantillon de base de données.
    2. Dans la console Oracle Cloud, sélectionnez votre instance ATP sur la page Bases de données autonomes pour visualiser ses détails.
    3. Cliquez sur Database Actions.
    4. Déverrouillez l'utilisateur GGADMIN :
      1. Sous Administration, cliquez sur Utilisateurs de base de données.
      2. Localisez GGADMIN, puis cliquez sur le menu représenté par des points de suspension et sélectionnez Modifier.
      3. Dans le panneau Edit User (Modifier l'utilisateur), entrez le mot de passe GGADMIN, confirmez le mot de passe, puis désélectionnez Account is Locked.
      4. Cliquez sur Appliquer les modifications.
    5. Chargez le schéma échantillon cible et les données :
      1. Dans le menu Database Actions, sous Développement, sélectionnez SQL.
      2. Copiez le script de OCIGGLL_OCIGGS_SETUP_USERS_ADW.sql et collez-le dans la feuille de calcul SQL.
      3. Cliquez sur Exécuter un script. L'onglet Sortie de script affiche des messages de confirmation.
      4. Effacez la feuille de calcul SQL, puis copiez et collez le code SQL à partir d'OCIGGLL_OCIGGS_SRC_MIRROR_USER_SEED_DATA.sql.
      5. Pour vérifier que les tables ont bien été créées, fermez la fenêtre SQL et rouvrez-la. Dans l'onglet Navigateur, recherchez le schéma SRC_OCIGGLL, puis sélectionnez des tables dans les listes déroulantes correspondantes.

Tâche 1 : créer les ressources OCI GoldenGate

Cet exemple de démarrage rapide nécessite des déploiements et des connexions pour la source et la cible.
  1. Créez des déploiements pour le serveur SQL source et la base de données Oracle cible.
  2. Créez une connexion à Azure Managed Instance pour la base de données Azure SQL, à l'aide des valeurs suivantes :
    1. Pour Base de données, entrez SRC_OCIGGLL.
    2. Dans Port, entrez 3342 pour les adresses publiques.
    3. Pour Hôte, utilisez le nom de serveur figurant sur la page de détails de l'instance gérée Azure dans la console Azure (par exemple, xyz.database.windows.net).
    4. Dans Utilisateur, entrez GGADMIN.
    5. Dans Mot de passe, entrez le mot de passe de l'utilisateur GGADMIN.
    6. Dans Protocole de sécurité, sélectionnez Plain dans la liste déroulante.
  3. Affectez la connexion Azure Manage Instance au déploiement SQL Server.
  4. Créez une connexion GoldenGate, puis affectez-la au déploiement SQL Server.
  5. Créez une connexion Autonomous Transaction Processing (ATP).
  6. Affectez la connexion ATP au déploiement Oracle.

Tâche 2 : créer les extractions

Créez Initial Load et Change Data Capture Extracts.
  1. Sur la page Deployments, sélectionnez le déploiement SQL Server créé dans la tâche 1.
  2. Sur la page Détails du déploiement, cliquez sur Lancer la console.
  3. Connectez-vous à la console de déploiement SQL Server source à l'aide des informations d'identification d'administrateur indiquées lors de la création du déploiement dans la tâche 1.
  4. Ajoutez des informations relatives aux transactions
    1. Dans le menu de navigation, cliquez sur Connexions de base de données, puis sur la base de données source et sur TRANDATA.
    2. Sur la page TRANDATA, cliquez sur Ajouter TRANDATA (icône Plus).
    3. Dans le panneau Ajouter des données de transaction, dans Nom de schéma, entrez SRC_OCIGGLL, puis cliquez sur Soumettre.

      Conseil :

      L'écran n'est pas actualisé lors de la soumission. Pour vérifier que TRANDATA a été ajouté, entrez SRC_OCIGGLL dans le champ de recherche, puis cliquez sur Rechercher. SRC_OCIGGLL est renvoyé et 6 tables sont préparées pour l'instanciation.
  5. Ensuite, dans le menu de navigation, sélectionnez Tâches, puis Purge Change Data et effectuez les opérations suivantes :
    1. Cliquez sur Ajouter des données de modification de purge (icône d'ajout).
    2. Saisissez un nom.
    3. Cliquez sur Soumettre.
  6. Ajoutez Initial Load Extract.
    1. Sur la page Extracts, cliquez sur Add Extract (icône Plus), puis remplissez le formulaire comme suit :
      • Sur la page d'informations Extract :
        1. Pour Extract type, sélectionnez Initial Load.
        2. Dans Nom de processus, entrez EIL.
        3. Cliquez sur Suivant.
      • Sur la page Fichier de paramètre, remplacez MAP *.*, TARGET *.*; par ce qui suit :
        TABLE SRC_OCIGGLL.*;
    2. Cliquez sur Créer et exécuter.
    Vous revenez à la page Extractions, où le démarrage de l'extraction peut prendre un moment. Vous pouvez ensuite sélectionner l'extraction pour consulter ses détails et consulter le fichier de rapport. Il répertorie toutes les tables et le nombre d'enregistrements exportés pour chacune.
  7. Ajoutez le fichier Integrated Extract.
    1. Dans le menu de navigation, cliquez sur Extracts.
    2. Sur la page Extracts, cliquez sur Add Extract (icône Plus), puis remplissez le formulaire comme suit :
      • Sur la page d'informations Extract :
        1. Pour Extract type, sélectionnez Change Data Capture.
        2. Dans Nom de processus, entrez ECDC.
        3. Cliquez sur Suivant.
      • Sur la page Options d'extraction :
        1. Pour Informations d'identification source, sélectionnez le facteur et l'alias de la base de données source.
        2. Dans Extract Trail Nom, saisissez un nom à deux caractères, tel que C1.
        3. Cliquez sur Suivant.
      • Sur la page Fichier de paramètre, remplacez MAP *.*, TARGET *.*; par ce qui suit :
        TABLE SRC_OCIGGLL.*;
    3. Cliquez sur Créer et exécuter.

Tâche 3 : créer le fichier Distribution Paths

  1. Si vous utilisez la banque d'informations d'identification GoldenGate, créez un utilisateur pour Distribution Path dans le déploiement Oracle cible et une connexion de chemin dans le déploiement SQL Server source. Si vous utilisez une banque d'informations d'identification IAM, ignorez cette étape.
  2. Dans la console de déploiement de l'instance gérée SQL Azure source GoldenGate, créez Distribution Path pour Initial Load Extract. Dans notre exemple, nous nommons Initial Load Extract, EIL.
  3. Créez Distribution Path pour Change Data Capture Extract. Dans notre exemple, nous nommons Change Data Capture Extract, ECDC.

Tâche 4 : créer les répliques

  1. Lancez la console de déploiement Oracle créée dans la tâche 1 et connectez-vous.
  2. Ouvrez le menu de navigation, puis cliquez sur Connexions de base de données.
  3. Cliquez sur Se connecter à la base de données.
  4. Ajout d'un élément Checkpoint table :
    1. Dans le menu de navigation, cliquez sur Checkpoint.
    2. Sur la page Checkpoint, cliquez sur Ajouter Checkpoint (icône Plus).
    3. Dans Checkpoint Table, entrez SRCMIRROR_OCIGGLL.CHECKTABLE.
    4. Cliquez sur Soumettre.
      Le nouveau fichier Checkpoint table apparaît dans la liste.
  5. Ajoutez une valeur Replicat pour Initial Load Extract :
    1. Cliquez sur Service d'administrateur, puis sur Replicats.
    2. Sur la page Replicats, cliquez sur Ajouter Replicat (icône Plus), puis remplissez le formulaire comme suit :
      1. Dans les informations Replicat, renseignez les champs de formulaire suivants, puis cliquez sur Suivant :
        1. Pour Replicat type, sélectionnez Nonintegrated Replicat.
        2. Dans Nom de processus, entrez un nom, tel que RIL.
      2. Sur la page Replicat Options, renseignez les champs de formulaire suivants, puis cliquez sur Suivant :
        1. Dans Nom, saisissez le nom de la trace de la tâche 2 (I1).
        2. Dans Domaine, sélectionnez le domaine de la connexion Autonomous Database.
        3. Dans Alias, sélectionnez l'alias de la connexion Autonomous Database.
        4. Dans Checkpoint table, sélectionnez le fichier Checkpoint table créé à l'étape 4.
      3. Sur la page Paramètres, ajoutez la correspondance suivante, puis cliquez sur Créer et exécuter :
        MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;

      Revenez à la page de présentation, dans laquelle vous pouvez consulter les détails de Replicat.

    3. Sélectionnez Replicat (RIL) et visualisez les Détails correspondants.
    4. Cliquez sur Statistics et vérifiez le nombre d'insertions. Actualisez la page.
      • Si le nombre d'insertion ne change pas, tous les enregistrements de Initial Load ont été chargés et vous pouvez arrêter Replicat (RIL).
      • Si le nombre d'insertion continue d'augmenter, actualisez la page jusqu'à ce que tous les enregistrements Initial Load soient chargés avant de continuer.
  6. Ajoutez une valeur Replicat pour Change Data Capture :
    1. Sur la page Replicats, cliquez sur Ajouter Replicat (icône Plus), puis remplissez le formulaire comme suit :
      1. Dans les informations Replicat, renseignez les champs de formulaire suivants, puis cliquez sur Suivant :
        1. Pour Replicat, type, sélectionnez Réplication non intégrée.
        2. Dans Nom de processus, entrez un nom, tel que RCDC.
      2. Sur la page Replicat Options, renseignez les champs de formulaire suivants, puis cliquez sur Suivant :
        1. Dans Nom de trace, saisissez le nom de la trace de la tâche 2 (C1).
        2. Dans Domaine, sélectionnez le domaine de la connexion Autonomous Database.
        3. Dans Alias, sélectionnez l'alias de la connexion Autonomous Database.
        4. Dans Checkpoint table, sélectionnez le fichier Checkpoint table créé à l'étape 4.
      3. Sur la page Paramètres, ajoutez le mapping suivant :
        MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;
    2. Cliquez sur Créer. N'exécutez pas le fichier Replicat.
    3. Sur la page Replicats, sélectionnez Replicat pour Initial Load (RIL) et consultez ses détails.
    4. Cliquez sur Statistics et vérifiez le nombre d'insertions. Actualisez la page.
      • Si le nombre d'insertion ne change pas, tous les enregistrements de Initial Load ont été chargés et vous pouvez arrêter Replicat (RIL).
      • Si le nombre d'insertion continue d'augmenter, actualisez la page jusqu'à ce que tous les enregistrements Initial Load soient chargés avant de continuer.

        Remarques :

        Si vous ne voyez aucune insertion, cliquez sur Performance Metrics Service, sélectionnez Extract, puis cliquez sur Statistiques de base de données.
    5. Revenez à la page Administration Service Replicats, puis démarrez RCDC Replicat.
    6. Après avoir démarré RCDC, consultez ses détails et ses statistiques afin de connaître le nombre d'insertions.