Ajouter une source CDC de base de données MySQL à un Eventstream
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.
Remarque
Cette source n'est pas prise en charge dans les régions suivantes de votre espace de travail : Ouest US3, Suisse Ouest.
Prérequis
- Accès à un espace de travail en mode licence de capacité Fabric ou en mode licence d’évaluation avec des autorisations Collaborateur 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.
- Si vous n’avez pas d’eventstream, créez-en un.
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.
À l’invite de commande
mysql
, créez l’utilisateur MySQL :mysql> CREATE USER 'user'@'%' IDENTIFIED BY 'password';
Accordez les privilèges nécessaires à l’utilisateur :
mysql> GRANT SELECT, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'user'@'%';
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 : Documentation Debezium.
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.
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.
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.
Ajouter Azure MySQL DB (CDC) en tant que source
Si vous n’avez pas encore ajouté de source à votre eventstream, sélectionnez la vignette Utiliser une source externe.
Si vous ajoutez la source à un flux d’événements déjà publié, basculez vers le mode Édition, sélectionnez Ajouter une source dans le ruban, puis sélectionnez Sources externes.
Sur la page Sélectionner une source de données, recherchez et sélectionnez Se connecter dans la vignette Base de données MySQL (CDC).
Configurer et se connecter à Azure MySQL DB (CDC)
Dans l’écran Connecter, sous Connexion, sélectionnez Nouvelle connexion pour créer une liaison de connexion cloud.
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.
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.
Vous pouvez également modifier le nom de la source en sélectionnant le bouton Crayon pour le nom de la source dans la section Détails du flux à droite.
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.
Dans la page Vérifier + se connecter, après avoir examiné le résumé de la source CDC Azure MySQL DB, sélectionnez Ajouter pour terminer la configuration.
Remarque
Le nombre maximal de sources et de destinations pour un flux d’événements est de 11.
Afficher l’Eventstream mis à jour
Vous voyez la source de la dB MySQL (CDC) ajoutée à votre Eventstream en mode Édition.
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.
Contenu connexe
Autres connecteurs :
- Flux de données Amazon Kinesis
- Azure Cosmos DB
- Azure Event Hubs
- Azure IoT Hub
- Capture des changements de données (CDC) de la base de données Azure SQL
- Confluent Kafka
- Point de terminaison personnalisé
- Google Cloud Pub/Sub
- CDC de la base de données PostgreSQL
- Exemples de données
- Événements de Stockage Blob Azure
- Événement d’espace de travail Fabric