Répliquer des données depuis HeatWave vers une base de données Autonomous Data Warehouse

Voyez comment utiliser OCI GoldenGate pour répliquer des données de HeatWave vers Autonomous Data Warehouse.

Avant de commencer

Pour terminer ce démarrage rapide, vous devez disposer des éléments suivants :

  • Hôte bastion OCI, pour vous connecter à HeatWave, charger l'exemple de base de données et effectuer des insertions
  • Une base de données HeatWave servant de base de données source
  • Une instance de base de données Autonomous Data Warehouse servant de base de données cible

Configuration de l'environnement : HeatWave

Pour configurer l'environnement pour ce démarrage rapide :
  1. Téléchargez le script de données-échantillons, puis exécutez-le sur la base de données HeatWave pour créer la base de données et charger les données.
  2. Créez un utilisateur ggadmin à l'aide du script suivant. N'oubliez pas de remplacer <ggadmin-password> par un mot de passe valide :
    CREATE USER 'ggadmin' IDENTIFIED BY '<ggadmin-password>';
    GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT, CREATE,CREATE VIEW, EVENT, INSERT, UPDATE, DROP,EXECUTE, DELETE ON *.* TO 'ggadmin';
  3. Ouvrez port 3306, par lequel OCI GoldenGate peut se connecter.
    1. Dans la console Oracle Cloud, localisez le sous-réseau utilisé par la base de données HeatWave.
    2. Dans la liste de sécurité du sous-réseau, créez une règle de trafic entrant pour port TCP/3306.
  4. Téléchargez les scripts de schéma cible, puis exécutez-les dans l'instance Autonomous Data Warehouse pour créer le schéma et les tables. Vous pouvez utiliser l'outil SQL de Database Actions pour Autonomous Data Warehouse pour exécuter les scripts :
    1. Dans la console Oracle Cloud, ouvrez la page des détails de la base de données Autonomous Data Warehouse, puis cliquez sur Database Actions.
    2. Actions de base de données, sous Développement, cliquez sur SQL.
    3. Dans l'outil SQL, copiez et collez le script à partir de OCIGGLL_OCIGGS_SETUP_USERS_ADW.sql dans la feuille de calcul SQL, puis cliquez sur Run Script. En cas de réussite, l'onglet Sortie du script affiche des messages de confirmation.
    4. Effacez la feuille de calcul SQL, puis copiez et collez uniquement les scripts Create Table à partir de OCIGGLL_OCIGGS_SRC_MIRROR_USER_SEED_DATA.sql. Les données seront chargées ultérieurement.

      Conseil :

      Vous devrez peut-être exécuter chaque énoncé Create Table séparément pour que l'outil SQL exécute les scripts avec succès.
    5. Pour vérifier que les tables ont été créées, fermez la fenêtre SQL et rouvrez-la. Dans l'onglet Navigateur, recherchez le schéma SRC_OCIGGLL, puis sélectionnez les tables dans les listes déroulantes correspondantes.

Tâche 1 : Créer des ressources GoldenGate pour OCI

Cet exemple de démarrage rapide nécessite des déploiements et des connexions pour la source et la cible.
  1. Créez un déploiement pour la base de données source HeatWave.
  2. Créez un déploiement pour la base de données Autonomous Data Warehouse cible.
  3. Créez une connexion à la base de données HeatWave source.
  4. Créez une connexion pour la base de données Autonomous Data Warehouse cible.
  5. Créez une connexion à GoldenGate, puis assignez cette connexion au déploiement MySQL source.
  6. Affectez la connexion source au déploiement MySQL source.
  7. Affectez la connexion cible au déploiement Oracle cible.

Tâche 2 : Créer les processus d'extraction

  1. Dans la page Déploiements, sélectionnez le déploiement MySQL créé au cours de la tâche 1.
  2. Dans la page des détails du déploiement, cliquez sur Lancer la console.
  3. Connectez-vous à la console du déploiement MySQL source à l'aide des données d'identification d'administrateur spécifiées lors de la création du déploiement au cours de la tâche 1.
  4. Dans le menu de navigation, sélectionnez Connexions à la base de données.
  5. Vérifiez les données d'identification pour la connexion HeatWave. Notez le domaine et l'alias.
  6. Ajoutez et exécutez une commande Change Data Capture Extract avec les valeurs suivantes :
    • Pour Type Extract, sélectionnez Change Data Capture.
    • Pour Nom du processus, entrez un nom pour le processus Extract.
    • Pour Domaine, sélectionnez le domaine.
    • Pour Alias, sélectionnez l'alias.
    • Pour Nom de la piste Extract, entrez un nom pour le fichier de piste.
    • Dans la page Parameter File, ajoutez les éléments suivants :
      TABLE SRC_OCIGGLL.*;
  7. Ajoutez et exécutez une extraction de chargement initial avec les valeurs suivantes :
    • Pour Type Extract, sélectionnez Initial Load Extract.
    • Pour Nom du processus, entrez un nom.
    • Dans la page Parameter File, ajoutez les éléments suivants :
      TABLE SRC_OCIGGLL.*;

Tâche 3 : Créez Distribution Path pour Initial Load Extract

  1. Dans la page Déploiements, sélectionnez le déploiement de base de données autonome cible.
  2. Dans la page des détails du déploiement, cliquez sur Lancer la console, puis connectez-vous en tant qu'utilisateur administrateur.
  3. Si vous utilisez le magasin de données d'identification IAM, passez à l'étape Créer une adresse Distribution Path. Si vous utilisez le magasin de données d'identification GoldenGate, créez un utilisateur avec lequel la source GoldenGate utilise pour se connecter à la cible GoldenGate.
    1. Dans le menu de navigation, cliquez sur Administration des utilisateurs.
    2. Cliquez sur Ajouter un utilisateur (icône plus), remplissez les champs comme suit, puis cliquez sur Soumettre :
      • Pour Nom d'utilisateur, entrez ggsnet.
      • Pour Rôle, sélectionnez Opérateur.
      • Entrez deux fois le mot de passe pour vérification.
  4. Dans la console du déploiement source PostgreSQL, créez une connexion de chemin pour l'utilisateur créé à l'étape précédente.
    1. Dans le menu de navigation, cliquez sur Connexions de chemin.
    2. Cliquez sur Ajouter une connexion de chemin (icône plus), remplissez les champs comme suit, puis cliquez sur Soumettre :
      • Pour l'alias de données d'identification, entrez dpuser.
      • Pour l'ID utilisateur, entrez ggsnet
      • Pour Mot de passe, entrez le même mot de passe que celui utilisé à l'étape précédente.
  5. Créez une valeur pour Distribution Path.
    1. Dans la barre de menu du service, cliquez sur Distribution Service, puis sur Ajouter Distribution Path (icône plus).
    2. Remplissez le formulaire Add Path comme suit :
      • Dans la page Path Information :
        1. Dans Nom du chemin, entrez un nom pour le chemin.
        2. Cliquez sur Suivant.
      • Dans la page Options sources :
        1. Laissez le champ Source Extract vide.
        2. Pour Nom de la piste, entrez le nom de la piste Initial Load Extract (I1).
        3. Cliquez sur Suivant.
      • Dans la page Target Options :
        1. Pour Cible, sélectionnez wss.
        2. Pour Hôte cible, entrez l'URL de déploiement cible, sans https :// ni les barres obliques de fin.
        3. Pour Numéro de port, entrez 443.
        4. Pour Nom de la piste, entrez I1.
        5. Pour Méthode d'authentification cible, sélectionnez alias UserID.
        6. Pour Nom, entrez le nom du domaine créé à l'étape précédente.
        7. Pour Alias, entrez l'alias créé à l'étape précédente (dpuser).
        8. Cliquez sur Suivant.
    3. Cliquez sur Créer et exécuter.
    Vous retournez à la page Distribution Service, où vous pouvez vérifier le chemin créé.
  6. Vérifiez le fichier Distribution Path :
    1. Cliquez sur Receiver Service.
    2. Vérifiez les détails de Distribution Path.

Tâche 4 : Ajoutez une valeur Replicat pour Initial Load Extract

  1. Dans la console de déploiement de GoldenGate pour OCI cible, ajoutez une table de points de vérification.
    1. Ouvrez le menu de navigation, puis cliquez sur Connexions à la base de données.
    2. Cliquez sur Se connecter à la base de données SourceATP.
    3. Dans le menu de navigation, cliquez sur Point de vérification.
    4. Dans la page Point de vérification, cliquez sur Ajouter un point de vérification (icône plus).
    5. Pour Table des points de vérification, entrez SRCMIRROR_OCIGGLL.CHECKTABLE.
    6. Cliquez sur Soumettre.

      Conseil :

      L'écran n'est pas actualisé lors de la soumission. Pour vérifier que la table de points de vérification a été ajoutée, entrez SRCMIRROR_OCIGGLL.CHECKTABLE dans le champ de recherche, puis cliquez sur Rechercher.
  2. Ajoutez le fichier Replicat :
    1. Cliquez sur Administrator Service, puis sur Ajouter Replicat (icône plus).
    2. Dans la page Ajouter Replicat, remplissez les champs de formulaire suivants, puis cliquez sur Suivant.
      • Pour le type de réplication, sélectionnez Nonintegrated Replicat.
      • Pour Nom du processus, entrez un nom, par exemple RIL.
    3. Dans la page Options Replicat, remplissez les champs suivants du formulaire, puis cliquez sur Suivant :
      • Pour Nom, entrez le nom de la piste de la tâche 2 (I1).
      • Pour Domaine, sélectionnez le domaine de la connexion à Autonomous Database.
      • Pour Alias, sélectionnez l'alias de la connexion Autonomous Database.
      • Pour Table de points de vérification, sélectionnez la table que vous avez créée à l'étape 1.
    4. Dans la page Options gérées, laissez les champs tels quels et cliquez sur Suivant.
    5. Dans la page Paramètres Replicat, ajoutez le mappage suivant, puis cliquez sur Créer et exécuter :
      MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;
    Vous retournez à la page Aperçu, où vous pouvez consulter les détails de Replicat.
  3. Sélectionnez Replicat (RIL) et consultez ses Détails.
  4. Cliquez sur Statistiques 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'insertions continue d'augmenter, continuez d'actualiser la page jusqu'à ce que les enregistrements de chargement initial soient tous chargés avant de continuer.

Tâche 5 : Vérifier le chargement initial

  1. Dans la console Oracle Cloud, ouvrez Database Actions à partir de la page des détails de la base de données Autonomous Data Warehouse.
  2. Actions de base de données, sous Développement, cliquez sur SQL.
  3. Dans l'outil SQL, entrez chacun des énoncés suivants dans la feuille de calcul et cliquez sur exécuter l'énoncé :
    SELECT * FROM SRCMIRROR_OCIGGLL.SRC_CITY;
    SELECT * FROM SRCMIRROR_OCIGGLL.SRC_CUSTOMER;
La sortie doit retourner les données chargées dans les tables de la base de données cible à la suite du chargement initial.

Tâche 6 : Créer une valeur Distribution Path pour une valeur Change Data Capture

  1. Dans la console du déploiement source, cliquez sur Distribution Service.
  2. Cliquez sur Ajouter Distribution Path.
  3. Remplissez le formulaire Add Path comme suit :
    1. Dans la page Path Information :
      1. Pour Nom du chemin, entrez un nom.
      2. Cliquez sur Suivant.
    2. Dans la page Options sources :
      1. Pour Source Extract, sélectionnez Change Data Capture Extract (ECDC)).
      2. Pour Nom de la piste, sélectionnez le fichier de piste Change Data Capture (C1).
      3. Cliquez sur Suivant.
    3. Dans la page Target Options :
      1. Pour Cible, sélectionnez wss.
      2. Pour Hôte cible, entrez l'URL de la console de déploiement cible (vous pouvez le trouver dans la page des détails du déploiement, sans https :// ni les barres obliques de fin.
      3. Pour Numéro de port, entrez 443.
      4. Pour Nom de la piste, entrez C1.
      5. Pour Méthode d'authentification cible, sélectionnez alias UserID.
      6. Pour Domaine, entrez le nom du domaine.
      7. Pour Alias, entrez l'alias.
    4. Cliquez sur Créer un chemin et exécuter.
  4. Dans la console de déploiement cible, cliquez sur Receiver Service, puis vérifiez Receiver path créé.

Tâche 7 : Ajouter une valeur Replicat pour Change Data Capture

  1. Ajoutez Replicat avec les valeurs suivantes :
    1. Dans la page Informations sur Replicat :
      • Pour Type Replicat, sélectionnez Coordinated Replicat.
      • Pour Nom du processus, entrez un nom, par exemple RCDC.
    2. Dans la page Options Replicat :
      • Pour Replicat Trail, entrez le nom de la piste de la tâche 2 (C1).
      • Pour Domaine, sélectionnez le domaine de la connexion à Autonomous Database.
      • Pour Alias, entrez l'alias de données d'identification.
      • Pour Table de points de vérification, sélectionnez la table que vous avez créée.
    3. Dans la page Paramètres Replicat, ajoutez le mappage suivant, puis cliquez sur Créer et exécuter :
      MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;
  2. Dans la page Aperçu de Administration Service, sélectionnez Replicat pour Initial Load (RIL) et consultez ses données.
  3. Cliquez sur Statistiques et vérifiez le nombre d'insertions. Actualisez la page.
    • Si le nombre d'insertion ne change pas, tous les enregistrements du chargement initial ont été chargés et vous pouvez arrêter Replicat (RIL)
    • Si le nombre d'insertions continue d'augmenter, continuez d'actualiser la page jusqu'à ce que les enregistrements de chargement initial soient tous chargés avant de continuer.
  4. Retournez à la page Aperçu du service d'administration, puis lancez Coordinated Replicat (RCDC).
  5. Après avoir démarré Coordinated Replicat, vérifiez ses détails et ses statistiques pour voir le nombre d'insertion.

Tâche 8 : Vérifier Change Data Capture

Effectuez des mises à jour dans la base de données HeatWave source pour vérifier la réplication vers Autonomous Data Warehouse.
  1. Dans le service d'hôte bastion pour OCI, créez une session de réacheminement de port SSH à l'aide de l'adresse IP MySQL et du port 3306. Ajoutez votre clé SSH publique.
  2. Connectez-vous à MySQL dans Cloud Shell à l'aide de votre clé privée et du port 3306.
  3. Après la connexion, exécutez la commande suivante :
    mysqlsh admin@localhost:3306 --sql
  4. Exécutez le script suivant pour effectuer des entrées dans la base de données HeatWave :
    use SRC_OCIGGLL;
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1000,'Houston',20,743113);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1001,'Dallas',20,822416);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1002,'San Francisco',21,157574);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1003,'Los Angeles',21,743878);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1004,'San Diego',21,840689);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1005,'Chicago',23,616472);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1006,'Memphis',23,580075);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1007,'New York City',22,124434);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1008,'Boston',22,275581);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1009,'Washington D.C.',22,688002);
    commit;
  5. Dans la console de déploiement MySQL source, sélectionnez le nom Change Data Capture Extract, puis cliquez sur Statistiques. Vérifiez que SRC_OCIGGLL.SRC_CITY comporte 10 inserts.

    Note :

    Si Extract n'a saisi aucune insertion, redémarrez Extract.

Tâche 9 : Surveiller et tenir à jour les processus

  1. Surveillez la performance.
  2. Gérez les fichiers de piste.