Utilisation de la réplication basée sur des identifiants de transaction globaux (GTID) - Amazon Aurora

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.

Utilisation de la réplication basée sur des identifiants de transaction globaux (GTID)

Le contenu ci-dessous explique comment utiliser les identifiants de transaction globaux (GTID) avec la réplication des journaux binaires (binlog) entre un cluster Aurora MySQL et une source externe.

Note

Pour Aurora, vous pouvez uniquement utiliser cette fonction avec des clusters Aurora MySQL qui utilisent la réplication des journaux binaires vers/à partir d’une base de données MySQL externe. L’autre base de données peut être une instance Amazon RDS MySQL, une base de données MySQL sur site, ou un cluster de bases de données Aurora dans une autre Région AWS. Pour apprendre à configurer ce type de réplication, consultez Réplication entre Aurora et MySQL ou entre Aurora et un autre cluster de bases de données Aurora (réplication de journaux binaires).

Si vous utilisez la réplication des journaux binaires, mais que vous ne maîtrisez pas la réplication GTID avec MySQL, consultez Réplication avec des identifiants de transaction globaux dans la documentation MySQL.

La réplication GTID est prise en charge pour Aurora MySQL versions 2 et 3.

Présentation des identifiants de transaction globaux (GTID)

Les identifiants de transaction globaux (GTID) sont des identifiants uniques générés pour des transactions MySQL validées. Vous pouvez utiliser ces identifiants pour simplifier et faciliter la résolution des problèmes liés à la réplication des journaux binaires.

Note

Lorsqu’Aurora synchronise des données entre les instances de base de données d’un cluster, ce mécanisme de réplication n’implique pas le journal binaire (binlog). Pour Aurora MySQL, la réplication GTID s’applique uniquement lorsque vous utilisez également la réplication des journaux binaires pour répliquer à l’intérieur ou à l’extérieur d’un cluster de bases de données Aurora MySQL à partir d’une base de données externe compatible avec MySQL.

MySQL utilise deux types différents de transactions pour la réplication des journaux binaires :

  • Transactions GTID – Transactions identifiées par un identifiant de transaction global (GTID).

  • Transactions anonymes – Transactions auxquelles aucun identifiant de transaction global (GTID) n’est associé.

Dans une configuration de réplication, les GTID sont uniques parmi toutes les instances de base de données. Les GTID simplifient la configuration de réplication dans la mesure où, lorsque vous les utilisez, vous n’avez pas à vous référer aux positions des fichiers journaux. Les GTID facilitent également le suivi des transactions répliquées et déterminent si l’instance source et les réplicas sont cohérents.

En règle générale, vous utilisez la réplication GTID avec Aurora lorsque vous effectuez une réplication à partir d’une base de données externe compatible avec MySQL dans un cluster Aurora. Vous pouvez procéder à la configuration de cette réplication dans le cadre d’une migration d’une base de données sur site ou Amazon RDS vers Aurora MySQL. Si la base de données externe utilise déjà des identifiants de transaction globaux (GTID), l’utilisation de la réplication GTID pour le cluster Aurora permet de simplifier le processus de réplication.

Vous configurez la réplication GTID pour un cluster Aurora MySQL en commençant par définir les paramètres de configuration appropriés dans un groupe de paramètres de cluster de bases de données. Vous associez ensuite ce groupe de paramètres au cluster.

Paramètres pour la réplication basée sur des identifiants de transaction globaux (GTID)

Utilisez les paramètres suivants pour configurer une réplication GTID.

Paramètre Valeurs valides Description

gtid_mode

OFF, OFF_PERMISSIVE, ON_PERMISSIVE, ON

OFF spécifie que les nouvelles transactions sont des transactions anonymes (et n’ont donc pas de GTID), et qu’une transaction doit être anonyme pour être répliquée.

OFF_PERMISSIVE spécifie que les nouvelles transactions sont des transactions anonymes, mais que toutes les transactions peuvent être répliquées.

ON_PERMISSIVE spécifie que les nouvelles transactions sont des transactions GTID, mais que toutes les transactions peuvent être répliquées.

ON spécifie que les nouvelles transactions sont des transactions GTID, et qu’une transaction doit être une transaction GTID pour être répliquée.

enforce_gtid_consistency

OFF, ON, WARN

OFF autorise les transactions à enfreindre la cohérence GTID.

ON interdit aux transactions d’enfreindre la cohérence GTID.

WARN autorise les transactions à enfreindre la cohérence GTID mais génère un avertissement lorsqu’une infraction se produit.

Note

Dans AWS Management Console, le paramètre gtid_mode apparaît sous la forme gtid-mode.

Pour la réplication GTID, utilisez ces paramètres pour le groupe de paramètres de votre cluster de bases de données Aurora MySQL :

  • ON et ON_PERMISSIVE s’appliquent uniquement à la réplication sortante d’un cluster Aurora MySQL. Ces deux valeurs forcent votre cluster de base de données Aurora à utiliser des identifiants de transaction globaux (GTID) pour les transactions répliquées sur une base de données externe. ON exige que la base de données externe utilise également la réplication GTID. ON_PERMISSIVE rend la réplication GTID facultative sur la base de données externe.

  • S’il est défini, OFF_PERMISSIVE indique que votre cluster de bases de données Aurora peuvent accepter la réplication entrante à partir d’une base de données externe. que cette dernière utilise la réplication GTID ou non.

  • S’il est défini, OFF indique que votre cluster de bases de données Aurora accepte uniquement la réplication entrante à partir de bases de données externes qui n’utilisent pas la réplication GTID.

Astuce

La réplication entrante est le scénario de réplication des journaux binaires le plus fréquent pour les clusters Aurora MySQL. Pour la réplication entrante, il est recommandé de définir le mode GTID sur OFF_PERMISSIVE. Cette valeur autorise la réplication entrante à partir de bases de données externes, quels que soient les paramètres GTID au niveau de la source de réplication.

Pour plus d’informations sur les groupes de paramètres, consultez Groupes de paramètres pour Amazon Aurora.