Configurer Google Cloud SQL pour MySQL pour l'ingestion
Aperçu
Le connecteur MySQL est en préversion publique. Contactez votre équipe de compte Databricks pour demander l'accès.
Cette page décrit comment configurer Google Cloud SQL pour MySQL pour l'ingestion. Vous devez activer la journalisation binaire et configurer la rétention du journal binaire pour prendre en charge la capture des changements de données.
Exigences
- Cloud SQL pour MySQL version 5.7,44 et ultérieures, ou 8,0 et ultérieures.
- Une instance Cloud SQL.
Configurer les indicateurs de base de données
La journalisation binaire est contrôlée via des indicateurs de base de données dans Cloud SQL pour MySQL. Vous devez configurer ces indicateurs via la Google Cloud Console.
Indicateurs de base de données requis
Configurez les indicateurs de base de données suivants :
Drapeau | Valeur | Description |
|---|---|---|
|
| Active la journalisation binaire. |
|
| Définit le format des logs binaires sur la réplication basée sur les lignes. Requis pour la capture des données modifiées. |
|
| Logs toutes les colonnes dans le journal binaire, pas seulement les colonnes modifiées. |
| Minimum : | Spécifie la durée de conservation des Logs binaires avant la purge automatique. Pour MySQL 5.7, utilisez |
Google Cloud Console
Pour configurer les indicateurs de base de données à l'aide de la Google Cloud Console :
- Ouvrez la Google Cloud Console et accédez à la page des instances Cloud SQL.
- Sélectionnez votre instance Cloud SQL pour ouvrir la page des détails de l'instance.
- Cliquez sur Modifier en haut de la page.
- Faites défiler jusqu'à la section Indicateurs .
- Cliquez sur Ajouter un drapeau et sélectionnez
binlog_format. Définissez la valeur àROW. - Cliquez sur Ajouter un drapeau et sélectionnez
binlog_row_image. Définissez la valeur àFULL. - Pour MySQL 8.0, cliquez sur Ajouter un indicateur et sélectionnez
binlog_expire_logs_seconds. Définissez la valeur minimale sur86400(un jour). Databricks recommande de le définir sur604800(sept jours). - Pour MySQL 5.7.44 et versions ultérieures, cliquez sur Ajouter un indicateur et sélectionnez
expire_logs_days. Définissez la valeur minimale sur1(un jour). Databricks recommande de le définir sur7(sept jours). - Cliquez sur Enregistrer en bas de la page.
- Lorsque vous y êtes invité, confirmez que vous souhaitez redémarrer l’instance pour que les modifications prennent effet.
Considérations relatives à la rétention des journaux binaires
-
La période de rétention minimale du journal binaire est d'un jour (24 heures ou 86 400 secondes). Databricks recommande une période de rétention du journal binaire de sept jours (168 heures ou 604 800 secondes). Si vous définissez une valeur inférieure, les journaux binaires pourraient être supprimés avant que la passerelle d'ingestion ne les traite, nécessitant un full refresh de toutes les tables.
-
Une full refresh est également requise si la passerelle ne peut pas traiter les binlogs en continu. Si la passerelle est arrêtée pendant plus de
binlog_expire_logs_seconds, les binlogs pourraient être supprimés avant la reprise de l'ingestion. -
Pour MySQL 5.7.44 et versions ultérieures, utilisez l'indicateur
expire_logs_days(valeur entière en jours). -
Pour MySQL 8.0 et versions ultérieures, utilisez l'indicateur
binlog_expire_logs_seconds(valeur entière en secondes).
Vérifier la configuration du binlog
Après avoir configuré les indicateurs de base de données et redémarré l'instance, vérifiez que la journalisation binaire est correctement configurée. Connectez-vous à votre instance Cloud SQL à l'aide d'un client MySQL et exécutez :
-- Check if binary logging is enabled
SHOW VARIABLES LIKE 'log_bin';
-- Should return:
-- +---------------+-------+
-- | Variable_name | Value |
-- +---------------+-------+
-- | log_bin | ON |
-- +---------------+-------+
-- Check binlog format
SHOW VARIABLES LIKE 'binlog_format';
-- Should return:
-- +---------------+-------+
-- | Variable_name | Value |
-- +---------------+-------+
-- | binlog_format | ROW |
-- +---------------+-------+
-- Check binlog row image
SHOW VARIABLES LIKE 'binlog_row_image';
-- Should return:
-- +------------------+-------+
-- | Variable_name | Value |
-- +------------------+-------+
-- | binlog_row_image | FULL |
-- +------------------+-------+
-- For MySQL 8.0: Check retention in seconds
SHOW VARIABLES LIKE 'binlog_expire_logs_seconds';
-- For MySQL 5.7: Check retention in days
SHOW VARIABLES LIKE 'expire_logs_days';
Configuration réseau
Assurez-vous que votre instance Cloud SQL est accessible depuis Databricks :
- IP publique : Ajoutez des réseaux autorisés pour permettre les connexions depuis les plages d’adresses IP Databricks.
- IP privée : Configurez le peering Virtual Private Cloud (VPC) entre votre Virtual Private Cloud (VPC) Google Cloud et Databricks.
- Proxy Cloud SQL : Envisagez d'utiliser le Proxy Cloud SQL Auth pour des connexions sécurisées.
Ajouter des réseaux autorisés (adresse IP publique)
Pour ajouter des réseaux autorisés pour la connectivité IP publique :
- Dans la console Cloud, accédez à votre instance Cloud SQL.
- Sélectionnez Connexions dans le menu de gauche.
- Sous Réseaux autorisés , cliquez sur Ajouter un réseau .
- Saisissez les plages IP Databricks.
- Cliquez sur Terminé , puis sur Enregistrer .
Sauvegardes automatisées
Cloud SQL active automatiquement la journalisation binaire lorsque les sauvegardes automatiques sont activées. Vérifiez que les sauvegardes automatiques sont activées :
- Dans la console Cloud, accédez à votre instance Cloud SQL.
- Sélectionnez Sauvegardes dans le menu de gauche.
- Vérifiez que les sauvegardes automatiques sont activées.
- Si cette option est désactivée, cliquez sur Modifier la configuration et activez les sauvegardes automatiques.
Ressources supplémentaires
Un administrateur peut maintenant soit :
- Utilisez Catalog Explorer pour créer une connexion afin que les non-administrateurs puissent créer des pipelines
- Utilisez l'interface utilisateur d'ingestion de données pour créer une connexion et un pipeline