Partager via


Ajouter une source CDC de la base de données MySQL à un Eventstream (préversion)

Remarque

Cet article contient des références au terme SLAVE, un terme que Microsoft n’utilise plus. Lorsque le terme sera supprimé du logiciel, nous le supprimerons de cet article.

Cet article vous montre comment ajouter une source de capture des changements de données Azure Database pour MySQL à un Eventstream. Le connecteur source de capture de données modifiées (CDC) Azure MySQL Database pour les Eventstreams Microsoft Fabric vous permet de capturer un instantané des données actuelles dans une base de données Azure Database pour MySQL.

Vous pouvez spécifier les tables à surveiller, et le Eventstreams enregistre toutes les futures modifications au niveau des lignes apportées aux tables. Une fois les modifications capturées dans le Eventstreams, vous pouvez traiter ces données CDC en temps réel et les envoyer à différentes destinations dans Fabric pour un traitement ou une analyse plus approfondis.

Important

Les fonctionnalités améliorées des Eventstreams Fabric sont actuellement en préversion.

Remarque

Cette source n’est pas prise en charge dans les régions suivantes de votre capacité d’espace de travail : Ouest US3, Suisse Ouest.

Prérequis

  • Accédez à un espace de travail Premium Fabric avec les autorisations contributeur ou supérieures.
  • Accès à une instance du serveur flexible Azure Database pour MySQL.
  • Votre base de données MySQL doit être accessible au public et ne doit ni se trouver derrière un pare-feu, ni être sécurisée dans un réseau virtuel.

Remarque

Le nombre maximal de sources et de destinations pour un flux d’événements est de 11.

Configurez MySQL DB

Le connecteur utilise le connecteur Debezium MySQL pour capturer les modifications apportées à votre base de données Azure Database pour MySQL. Vous devez définir un utilisateur MySQL disposant de privilèges appropriés sur toutes les bases de données dans lesquelles le connecteur de messagerie peut capturer les modifications. Vous pouvez utiliser directement l’utilisateur administrateur pour vous connecter à la base de données qui dispose déjà normalement des privilèges appropriés comme indiqué ci-dessous. ou vous pouvez suivre les étapes ci-dessous pour créer un nouvel utilisateur

Remarque

Le nouveau compte d’utilisateur ou d’administrateur et le mot de passe correspondant seront utilisés ultérieurement pour se connecter à la base de données dans Eventstream.

  1. À l’invite de commande mysql, créez l’utilisateur MySQL :

    mysql> CREATE USER 'user'@'%' IDENTIFIED BY 'password';
    
  2. Accordez les privilèges nécessaires à l’utilisateur :

    mysql> GRANT SELECT, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'user'@'%';
    
  3. Finalisez les autorisations de l’utilisateur :

    mysql> FLUSH PRIVILEGES;
    

Pour confirmer que l’utilisateur ou l’administrateur dispose des privilèges nécessaires, exécutez la commande ci-dessous. Les privilèges nécessaires à l’étape 2 doivent s’afficher.

SHOW GRANTS FOR user;

Pour plus d’informations sur l’octroi des autorisations requises à l’utilisateur, consultez le connecteur Debezium pour MySQL :: Debezium Documentation.

Activer le binlog

Vous devez activer la journalisation binaire pour la réplication MySQL. Les journaux binaires enregistrent les mises à jour des transactions pour que les outils de réplication propagent les modifications.

  1. Sur la page du portail Azure pour votre compte Azure Database pour MySQL, sélectionnez Paramètres du serveur sous Paramètres dans la navigation de gauche.

  2. Sur la page Paramètres du serveur, configurez les propriétés suivantes, puis sélectionnez Enregistrer.

    • Pour binlog_row_image, sélectionnez complet.

    • Pour binlog_expire_logs_seconds, définissez le nombre de secondes pendant lesquelles le service attend que le fichier journal binaire soit supprimé définitivement. Définissez la valeur pour qu’elle corresponde aux besoins de votre environnement, par exemple 86400.

    Capture d’écran des paramètres binlog pour la réplication sous paramètres du serveur.

Ajouter Azure MySQL DB (CDC) en tant que source

  1. Dans l'intelligence en temps réel de Fabric, sélectionnez Eventstream pour créer un nouveau Eventstream. Vérifiez que l’option Fonctionnalités améliorées (préversion) est activée.

    Capture d’écran de la création d'un nouveau flux d'événements.

  2. Dans l’écran suivant, sélectionnez Ajouter une source externe.

    Capture d’écran de la sélection Ajouter une source externe.

Configurer et se connecter à Azure MySQL DB (CDC)

  1. Dans l’écran Sélectionner une source de données, sélectionnez Azure MySQL DB (CDC) en tant que source de données.

    Capture d’écran de la sélection d’Azure MySQL DB (CDC).

  2. Dans l’écran Connecter, sous Connexion, sélectionnez Nouvelle connexion pour créer une liaison de connexion cloud.

  3. Entrez les paramètres de connexion suivants et les identifiants de connexion pour votre dB d’Azure MySQL, puis sélectionnez Connexion.

    • Serveur : l’adresse du serveur de votre base de données Azure Database pour MySQL, par exemple my-mysql-server.mysql.database.azure.com.
    • Base de données : nom de la base de données, par exemple my_database.
    • Nom de connexion : généré automatiquement, ou vous pouvez entrer un nouveau nom pour cette connexion.
    • Nom d’utilisateur et mot de passe : saisissez les identifiants de votre base de données Azure Database pour MySQL. Veillez à entrer le compte d’administrateur de serveur ou le compte d’utilisateur créé avec les privilèges nécessaires.

    Capture d’écran des paramètres de connexion pour Azure MySQL DB (CDC).

  4. Entrez les informations suivantes pour configurer la source de données CDC de la dB d’Azure MySQL, puis sélectionnez Suivant.

    • Table(s) : saisissez une liste de noms de tables séparés par des virgules. Chaque nom de table doit suivre le format <database name>.<table name>, par exemple my_database.users.
    • ID de serveur : saisissez une valeur unique pour chaque serveur et client de réplication dans le cluster MySQL. La valeur par défaut est 1000.
    • Port : conservez la valeur par défaut inchangée.

    Capture d’écran de la sélection de tables, d’ID de serveur et de port pour la connexion de la dB d’Azure MySQL (CDC).

    Remarque

    Définissez un ID de serveur différent pour chaque lecteur. Chaque client de base de données MySQL pour la lecture du binlog doit avoir un ID unique, appelé ID de serveur. MySQL Server utilise cet ID pour maintenir la connexion réseau et la position du binlog. Différents travaux partageant le même ID de serveur peuvent entraîner la lecture à partir de la position de binlog incorrecte. Par conséquent, il est recommandé de définir un ID de serveur différent pour chaque lecteur.

  5. Après avoir examiné le résumé de la source CDC de la dB d’Azure MySQL, sélectionnez Ajouter pour terminer la configuration.

Vous voyez la source de la dB MySQL (CDC) ajoutée à votre Eventstream en mode Édition.

Capture d’écran de la source de la CDC de la dB d’Azure MySQL ajoutée en mode Édition avec le bouton Publier mis en surbrillance.

Sélectionnez Publier pour publier les modifications et commencer à diffuser en continu les données CDC de la dB d’Azure MySQL dans l’Eventstream.

Capture d’écran de l’Eventstream publié avec la source CDC de la dB d’Azure MySQL en affichage direct.

Autres connecteurs :