Gestion des clusters actifs-actifs - Amazon Relational Database Service

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.

Gestion des clusters actifs-actifs

Les procédures stockées suivantes permettent de configurer et de gérer les clusters actifs-actifs RDS for MySQL. Pour plus d’informations, consultez Configuration de clusters actifs-actifs pour RDS for MySQL.

Ces procédures stockées ne sont disponibles qu’avec les instances de base de données RDS for MySQL exécutant les versions suivantes :

  • Toutes les versions 8.4 de MySQL

  • MySQL 8.0.35 et versions mineures ultérieures

mysql.rds_group_replication_advance_gtid

Crée des GTID d’espace réservé sur l’instance de base de données actuelle.

Syntaxe

CALL mysql.rds_group_replication_advance_gtid( begin_id , end_id , server_uuid );

Paramètres

begin_id

L’ID de transaction de départ à créer.

end_id

L’ID de transaction de fin à créer.

begin_id

Le group_replication_group_name de transaction à créer. Le group_replication_group_name est spécifié sous forme d’UUID dans le groupe de paramètres de base de données associé à l’instance de base de données.

Notes d’utilisation

Dans un cluster actif-actif, pour qu’une instance de base de données rejoigne un groupe, toutes les transactions GTID exécutées sur la nouvelle instance de base de données doivent exister sur les autres membres du cluster. Dans des cas inhabituels, une nouvelle instance de base de données peut contenir davantage de transactions lorsque les transactions sont exécutées avant de joindre l’instance au groupe. Dans ce cas, vous ne pouvez supprimer aucune transaction existante, mais vous pouvez utiliser cette procédure pour créer les GTID d’espace réservé correspondants sur les autres instances de base de données du groupe. Avant cela, vérifiez que les transactions n’affectent pas les données répliquées.

Lorsque vous appelez cette procédure, les transactions GTID de server_uuid:begin_id-end_id sont créées avec un contenu vide. Pour éviter les problèmes de réplication, n’utilisez pas cette procédure dans d’autres conditions.

Important

Évitez d’appeler cette procédure lorsque le cluster actif-actif fonctionne normalement. N’appelez cette procédure que si vous comprenez les conséquences possibles des transactions que vous créez. L’appel de cette procédure peut entraîner des données incohérentes.

exemple

L’exemple suivant crée des GTID d’espace réservé sur l’instance de base de données actuelle :

CALL mysql.rds_group_replication_advance_gtid(5, 6, '11111111-2222-3333-4444-555555555555');

mysql.rds_group_replication_create_user

Crée l’utilisateur de réplication rdsgrprepladmin pour la réplication de groupe sur l’instance de base de données.

Syntaxe

CALL mysql.rds_group_replication_create_user( replication_user_password );

Paramètres

replication_user_password

Mot de passe de l’utilisateur de réplication rdsgrprepladmin.

Notes d’utilisation

  • Le mot de passe de l’utilisateur de réplication rdsgrprepladmin doit être le même sur toutes les instances de base de données d’un cluster actif-actif.

  • Le nom d’utilisateur rdsgrprepladmin est réservé aux connexions de réplication de groupe. Aucun autre utilisateur, y compris l’utilisateur principal, ne peut avoir ce nom d’utilisateur.

exemple

L’exemple suivant crée l’utilisateur de réplication rdsgrprepladmin pour la réplication de groupe sur l’instance de base de données :

CALL mysql.rds_group_replication_create_user('password');

mysql.rds_group_replication_set_recovery_channel

Définit le canal group_replication_recovery d’un cluster actif-actif. La procédure utilise l’utilisateur réservé rdsgrprepladmin pour configurer le canal.

Syntaxe

CALL mysql.rds_group_replication_set_recovery_channel( replication_user_password);

Paramètres

replication_user_password

Mot de passe de l’utilisateur de réplication rdsgrprepladmin.

Notes d’utilisation

Le mot de passe de l’utilisateur de réplication rdsgrprepladmin doit être le même sur toutes les instances de base de données d’un cluster actif-actif. Un appel au mysql.rds_group_replication_create_user permet de spécifier le mot de passe.

exemple

L’exemple suivant définit le canal group_replication_recovery d’un cluster actif-actif.

CALL mysql.rds_group_replication_set_recovery_channel('password');

mysql.rds_group_replication_start

Démarre la réplication de groupe sur l’instance de base de données actuelle.

Syntaxe

CALL mysql.rds_group_replication_start( bootstrap );

Paramètres

bootstrap

Valeur qui indique s’il faut initialiser un nouveau groupe ou rejoindre un groupe existant. 1 initialise un nouveau groupe avec l’instance de base de données actuelle. 0 associe l’instance de base de données actuelle à un groupe existant en se connectant aux points de terminaison définis dans le paramètre group_replication_group_seeds du groupe de paramètres de base de données associé à l’instance de base de données.

exemple

L’exemple suivant initialise un nouveau groupe avec l’instance de base de données actuelle :

CALL mysql.rds_group_replication_start(1);

mysql.rds_group_replication_stop

Arrête la réplication de groupe sur l’instance de base de données actuelle.

Syntaxe

CALL mysql.rds_group_replication_stop();

Notes d’utilisation

Lorsque vous arrêtez la réplication sur une instance de base de données, cela n’affecte aucune autre instance de base de données du cluster actif-actif.