View a markdown version of this page

Désactivation de GTID-based la réplication pour une instance de base de données MySQL avec des répliques en lecture dans un cluster de base de - 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.

Désactivation de GTID-based la réplication pour une instance de base de données MySQL avec des répliques en lecture dans un cluster de base de

Vous pouvez désactiver GTID-based la réplication pour une instance de base de données MySQL avec des répliques de lecture.

Pour désactiver la GTID-based réplication pour , une instance de base de données MySQL avec des répliques de lecture
  1. Sur chaque réplica en lecture, exécutez la procédure suivante :

    Versions majeures MySQL 8.4 et ultérieures

    CALL mysql.rds_set_source_auto_position(0);

    Versions majeures MySQL 8.0 et antérieures

    CALL mysql.rds_set_master_auto_position(0);
  2. Réinitialisez gtid_mode sur ON_PERMISSIVE.

    1. Assurez-vous que le groupe de paramètres associé à l’instance de base de données MySQL et à chaque réplica en lecture contient le paramètre gtid_mode défini sur ON_PERMISSIVE.

      Pour plus d’informations sur la définition des paramètres de configuration à l’aide de groupes de paramètres, consultez Groupes de paramètres pour Amazon RDS.

    2. Relancez l’instance de base de données MySQL et chaque réplica en lecture. Pour plus d’informations sur le redémarrage, consultez Redémarrage d'une instance de base de données cluster de base de données.

  3. Réinitialisez gtid_mode sur OFF_PERMISSIVE.

    1. Assurez-vous que le groupe de paramètres associé à l’instance de base de données MySQL et à chaque réplica en lecture contient le paramètre gtid_mode défini sur OFF_PERMISSIVE.

    2. Relancez l’instance de base de données MySQL et chaque réplica en lecture.

  4. Attendez que toutes les transactions GTID soient appliquées sur tous les réplicas en lecture. Pour vérifier qu’elles ont été appliquées, procédez comme suit :

    1. Exécutez la commande suivante sur l’instance de base de données MySQL :

      MySQL 8.4

      SHOW BINARY LOG STATUS

      MySQL 5.7 et 8.0

      SHOW MASTER STATUS

      Votre sortie doit ressembler à ce qui suit.

      File Position ------------------------------------ mysql-bin-changelog.000031 107 ------------------------------------

      Notez le fichier et la position dans votre sortie.

    2. Sur chaque réplica en lecture, utilisez les informations de fichier et de position de l’instance source lors de l’étape précédente pour exécuter la requête suivante :

      MySQL 8.4, ainsi que MySQL 8.0.26 et les versions ultérieures de MySQL

      SELECT SOURCE_POS_WAIT('file', position);

      MySQL 5.7

      SELECT MASTER_POS_WAIT('file', position);

      Par exemple, si votre fichier se nomme mysql-bin-changelog.000031 et que sa position est 107, exécutez l’instruction suivante :

      MySQL 8.4, ainsi que MySQL 8.0.26 et les versions ultérieures de MySQL

      SELECT SOURCE_POS_WAIT('mysql-bin-changelog.000031', 107);

      MySQL 5.7

      SELECT MASTER_POS_WAIT('mysql-bin-changelog.000031', 107);
  5. Réinitialisez les paramètres GTID pour désactiver GTID-based la réplication.

    1. Assurez-vous que le groupe de paramètres associé à l’instance de base de données MySQL et à chaque réplica en lecture contient la configuration de paramètres suivante :

      • gtid_modeOFF

      • enforce_gtid_consistencyOFF

    2. Relancez l’instance de base de données MySQL et chaque réplica en lecture.