Évaluations MySQL - AWS Service de Migration de Base de Données
Valider si la compression des transactions du journal binaire est désactivéeVérifiez si l'utilisateur DMS dispose des autorisations REPLICATION CLIENT et REPLICATION SLAVE pour la base de données sourceValider si l'utilisateur DMS dispose des autorisations SELECT pour les tables de la base de données sourceValidez si le server_id est défini sur 1 ou plus dans la base de données sourceValidez si l'utilisateur DMS dispose des autorisations nécessaires pour la base de données MySQL en tant que cibleValider si la suppression automatique des journaux binaires est définie pour la base de données sourceVérifiez que le mode LOB limité n'est utilisé que lorsqu'il BatchApplyEnabled est défini sur trueValider si une table utilise un moteur de stockage autre qu'InnodbValider si l'incrémentation automatique est activée sur toutes les tables utilisées pour la migrationValidez si l'image binlog de la base de données est configurée pour FULL prendre en charge le DMS CDCValidez si la base de données source est une MySQL Read-ReplicaValidez si une table comporte des partitions et recommandez target_table_prep_mode les paramètres des tâches à chargement completValider si DMS prend en charge la version de base de donnéesValidez si la base de données cible est configurée pour être définie local_infile sur 1Valider si la base de données cible contient des tables avec des clés étrangèresValider si les tables sources de l'étendue de la tâche sont soumises à des contraintes de cascadeValidez si les valeurs de délai d'attente sont appropriées pour une source ou une cible MySQL

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Évaluations MySQL

Cette section décrit les évaluations de prémigration individuelles pour les tâches de migration qui utilisent un point de terminaison source sans serveur MySQL, Aurora MySQL Compatible Edition ou Aurora MySQL Compatible Edition.

Rubriques

Valider si la compression des transactions du journal binaire est désactivée

Clé API : mysql-check-binlog-compression

Cette évaluation préalable à la migration permet de vérifier si la compression des transactions du journal binaire est désactivée. AWS DMS ne prend pas en charge la compression des transactions du journal binaire.

Pour plus d'informations, consultez Limitations relatives à l'utilisation d'une base de données MySQL comme source pour AWS DMS.

Vérifiez si l'utilisateur DMS dispose des autorisations REPLICATION CLIENT et REPLICATION SLAVE pour la base de données source

Clé API : mysql-check-replication-privileges

Cette évaluation préalable à la migration permet de vérifier si l'utilisateur DMS spécifié dans les paramètres de connexion du point de terminaison source possède REPLICATION CLIENT des REPLICATION SLAVE autorisations pour la base de données source si le type de migration des tâches DMS est CDC ou full load + CDC.

Pour plus d'informations, consultez Utiliser une base de données compatible avec MySQL comme source pour. AWS DMS

Valider si l'utilisateur DMS dispose des autorisations SELECT pour les tables de la base de données source

Clé API : mysql-check-select-privileges

Cette évaluation préalable à la migration permet de vérifier si l'utilisateur DMS spécifié dans les paramètres de connexion du point de terminaison source dispose des autorisations SELECT pour les tables de la base de données source.

Pour plus d'informations, consultez Utiliser une base de données compatible avec MySQL comme source pour. AWS DMS

Validez si le server_id est défini sur 1 ou plus dans la base de données source

Clé API : mysql-check-server-id

Cette évaluation préalable à la migration permet de vérifier si la variable server_id serveur est définie sur 1 ou plus dans la base de données source pour le type de migration CDC.

Pour plus d'informations sur les sources pour AWS DMS, consultez Utiliser une base de données compatible MySQL autogérée comme source pour. AWS DMS

Validez si l'utilisateur DMS dispose des autorisations nécessaires pour la base de données MySQL en tant que cible

Clé API : mysql-check-target-privileges

Cette évaluation préalable à la migration permet de vérifier si l'utilisateur DMS spécifié dans les paramètres de connexion du point de terminaison cible dispose des autorisations nécessaires pour la base de données MySQL en tant que cible.

Pour plus d'informations sur les prérequis requis pour les points de terminaison source MySQL, consultez Utiliser une base de données compatible MySQL comme source pour. AWS DMS

Valider si la suppression automatique des journaux binaires est définie pour la base de données source

Clé API : mysql-check-expire-logs-days

Cette évaluation préalable à la migration permet de vérifier si votre base de données est configurée pour supprimer automatiquement les journaux binaires. Les valeurs de l'une EXPIRE_LOGS_DAYS ou l'autre des variables système BINLOG_EXPIRE_LOGS_SECONDS globales doivent être supérieures à zéro pour éviter une utilisation excessive de l'espace disque pendant la migration.

Pour plus d'informations sur les sources pour AWS DMS, consultez Utiliser une base de données compatible MySQL autogérée comme source pour. AWS DMS

Vérifiez que le mode LOB limité n'est utilisé que lorsqu'il BatchApplyEnabled est défini sur true

Clé API : mysql-batch-apply-lob-mode

Cette évaluation préalable à la migration permet de vérifier si la tâche DMS inclut des colonnes LOB. Si des colonnes LOB sont incluses dans le périmètre de la tâche, vous devez uniquement les utiliser BatchApplyEnabled conjointement avec le mode LOB limité.

Pour plus d'informations sur le BatchApplyEnabled paramètre, voir Comment utiliser la fonction d'application par lots du DMS pour améliorer les performances de réplication CDC ? .

Valider si une table utilise un moteur de stockage autre qu'Innodb

Clé API : mysql-check-table-storage-engine

Cette évaluation préalable à la migration permet de vérifier si le moteur de stockage utilisé pour une table de la base de données MySQL source est un moteur autre qu'Innodb. DMS crée des tables cibles avec le moteur de stockage InnoDB par défaut. Si vous devez utiliser un moteur de stockage autre qu'InnoDB, vous devez créer manuellement la table dans la base de données cible et configurer votre tâche DMS pour qu'elle TRUNCATE_BEFORE_LOAD soit utilisée ou DO_NOTHING comme paramètre de tâche à chargement complet. Pour plus d'informations sur les paramètres des tâches de chargement complet, consultezParamètres de tâche de chargement complet.

Note

Cette évaluation de prémigration n'est pas disponible pour Aurora MySQL Compatible Edition ou Aurora MySQL Compatible Edition Serverless.

Pour plus d'informations sur les limites des points de terminaison MySQL, consultezLimitations relatives à l'utilisation d'une base de données MySQL comme source pour AWS DMS.

Valider si l'incrémentation automatique est activée sur toutes les tables utilisées pour la migration

Clé API : mysql-check-auto-increment

Cette évaluation préalable à la migration permet de vérifier si l'incrémentation automatique est activée dans les tables sources utilisées dans la tâche. DMS ne migre pas l'attribut AUTO_INCREMENT d'une colonne vers une base de données cible.

Pour plus d'informations sur les limites des points de terminaison MySQL, consultezLimitations relatives à l'utilisation d'une base de données MySQL comme source pour AWS DMS. Pour plus d'informations sur la gestion des colonnes d'identité dans MySQL, consultez Gérer les colonnes IDENTITY dans AWS DMS : Partie 2.

Validez si l'image binlog de la base de données est configurée pour FULL prendre en charge le DMS CDC

Clé API : mysql-check-binlog-image

Cette évaluation préalable à la migration vérifie si l'image binlog de la base de données source est définie sur. FULL Dans MySQL, la binlog_row_image variable détermine la manière dont un événement de journal binaire est écrit lors de l'utilisation du ROW format. Pour garantir la compatibilité avec le DMS et prendre en charge le CDC, définissez la binlog_row_image variable surFULL. Ce paramètre garantit que DMS reçoit suffisamment d'informations pour créer le langage de manipulation de données (DML) complet pour la base de données cible pendant la migration.

Pour définir l'image binlog surFULL, procédez comme suit :

  • Pour Amazon RDS, cette valeur est FULL par défaut.

  • Pour les bases de données hébergées sur site ou sur Amazon EC2, définissez la binlog_row_image valeur dans (my.iniMicrosoft Windows) ou my.cnf (UNIX).

Cette évaluation n’est valide que pour une migration de chargement complet + CDC, ou pour une migration de CDC uniquement. Cette évaluation n’est pas valide pour une migration de chargement complet uniquement.

Validez si la base de données source est une MySQL Read-Replica

Clé API : mysql-check-database-role

Cette évaluation préalable à la migration vérifie si la base de données source est une réplique lue. Pour activer la prise en charge par le CDC du DMS lorsqu'il est connecté à une réplique en lecture, définissez le log_slave_updates paramètre surTrue. Pour plus d'informations sur l'utilisation d'une base de données MySQL autogérée, consultezUtilisation d'une base de données compatible MySQL autogérée comme source pour AWS DMS.

Pour définir la log_slave_updates valeur surTrue, procédez comme suit :

  • Pour Amazon RDS, utilisez le groupe de paramètres de la base de données. Pour plus d'informations sur l'utilisation des groupes de paramètres de base de données RDS, consultez la section Utilisation des groupes de paramètres dans le guide de l'utilisateur Amazon RDS.

  • Pour les bases de données hébergées sur site ou sur Amazon EC2, définissez la log_slave_updates valeur dans (my.iniMicrosoft Windows) ou my.cnf (UNIX).

Cette évaluation n’est valide que pour une migration de chargement complet + CDC, ou pour une migration de CDC uniquement. Cette évaluation n’est pas valide pour une migration de chargement complet uniquement.

Validez si une table comporte des partitions et recommandez target_table_prep_mode les paramètres des tâches à chargement complet

Clé API : mysql-check-table-partition

Cette évaluation préalable à la migration vérifie la présence de tables avec des partitions dans la base de données source. DMS crée des tables sans partitions sur la cible MySQL. Pour migrer des tables partitionnées vers une table partitionnée sur la cible, vous devez effectuer les opérations suivantes :

  • Pré-créez les tables partitionnées dans la base de données MySQL cible.

  • Configurez votre tâche DMS pour qu'elle TRUNCATE_BEFORE_LOAD soit utilisée ou DO_NOTHING comme paramètre de tâche à chargement complet.

Pour plus d'informations sur les limites des points de terminaison MySQL, consultezLimitations relatives à l'utilisation d'une base de données MySQL comme source pour AWS DMS.

Valider si DMS prend en charge la version de base de données

Clé API : mysql-check-supported-version

Cette évaluation préalable à la migration vérifie si la version de la base de données source est compatible avec DMS. Le CDC n'est pas pris en charge avec les versions 5.5 ou inférieures d'Amazon RDS MySQL, ni avec les versions de MySQL supérieures à 8.0.x. CDC n'est pris en charge que pour les versions 5.6, 5.7 ou 8.0 de MySQL. Pour plus d'informations sur les versions de MySQL prises en charge, consultezPoints de terminaison sources pour la migration des données.

Validez si la base de données cible est configurée pour être définie local_infile sur 1

Clé API : mysql-check-target-localinfile-set

Cette évaluation préalable à la migration vérifie si le local_infile paramètre de la base de données cible est défini sur 1. DMS nécessite que le paramètre « local_infile » soit défini sur 1 lors du chargement complet dans votre base de données cible. Pour de plus amples informations, veuillez consulter Migration de MySQL vers MySQL à l'aide d' AWS DMS..

Cette évaluation n'est valable que pour une tâche à pleine charge ou à pleine charge et pour une tâche CDC.

Valider si la base de données cible contient des tables avec des clés étrangères

Clé API : mysql-check-fk-target

Cette évaluation préalable à la migration vérifie si une tâche à chargement complet ou à chargement complet et une tâche CDC migrant vers une base de données MySQL contiennent des tables avec des clés étrangères. Le paramètre par défaut dans DMS consiste à charger les tables par ordre alphabétique. Les tables comportant des clés étrangères et des contraintes d'intégrité référentielle peuvent entraîner l'échec du chargement, car les tables parent et enfant peuvent ne pas être chargées en même temps.

Pour plus d'informations sur l'intégrité référentielle dans le DMS, consultez la section Utilisation des index, des déclencheurs et des contraintes d'intégrité référentielle dans la rubrique. Améliorer les performances d'une AWS DMS migration

Valider si les tables sources de l'étendue de la tâche sont soumises à des contraintes de cascade

Clé API : mysql-check-cascade-constraints

Cette évaluation de prémigration vérifie si l'une des tables sources MySQL comporte des contraintes de cascade. Les contraintes en cascade ne sont ni migrées ni répliquées par les tâches DMS, car MySQL n'enregistre pas les modifications de ces événements dans le binlog. Bien qu' AWS DMS il ne prenne pas en charge ces contraintes, vous pouvez utiliser des solutions de contournement pour les cibles de base de données relationnelles.

Pour plus d'informations sur la prise en charge des contraintes en cascade et d'autres contraintes, consultez Non-migration des index, des clés étrangères ou des mises à jour ou suppressions en cascade la section Résolution des problèmes de migration dans AWS DMS la rubrique.

Validez si les valeurs de délai d'attente sont appropriées pour une source ou une cible MySQL

Clé API : mysql-check-target-network-parameter

Cette évaluation préalable à la migration vérifie si le point de terminaison MySQL d'une tâche possède les net_read_timeout wait_timeout paramètres net_wait_timeout et définis sur au moins 300 secondes. Cela est nécessaire pour éviter les déconnexions lors de la migration.

Pour de plus amples informations, veuillez consulter Les connexions à une instance MySQL cible sont déconnectées durant une tâche.