Deaktivieren einer GTID-basierten Replikation für eine MySQL-DB-Instance mit Read Replicas - Amazon Relational Database Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Deaktivieren einer GTID-basierten Replikation für eine MySQL-DB-Instance mit Read Replicas

Sie können eine GTID-basierte Replikation für die eine GTID-basierte Replikation für eine MySQL-DB-Instance mit Lesereplikaten verwenden.

GTID-basierte Replikation für eine MySQL-DB-Instance mit Lesereplikaten deaktivieren
  1. Führen Sie auf jedem Lesereplikat die folgende Prozedur aus:

    MySQL 8.4 und höhere Hauptversionen

    CALL mysql.rds_set_source_auto_position(0);

    MySQL 8.0 und niedrigere Hauptversionen

    CALL mysql.rds_set_master_auto_position(0);
  2. Setzen Sie den Wert für gtid_mode auf ON_PERMISSIVE zurück.

    1. Die Parametergruppe, die der MySQL-DB-Instance zugeordnet ist, und jedes Read Replica muss den Wert für den Parameter gtid_mode auf ON_PERMISSIVE gesetzt haben.

      Weitere Informationen zum Einstellen von Konfigurationsparametern unter Verwendung von Parametergruppen finden Sie unter Parametergruppen für Amazon RDS.

    2. Starten Sie die MySQL-DB-Instance und jedes Read Replica neu. Weitere Informationen zum Neustarten finden Sie unter Neustarten einer DB-Instance.

  3. Setzen Sie den Wert für gtid_mode auf OFF_PERMISSIVE zurück.

    1. Die Parametergruppe, die der MySQL-DB-Instance zugeordnet ist, und jedes Read Replica muss den Wert für den Parameter gtid_mode auf OFF_PERMISSIVE gesetzt haben.

    2. Starten Sie die MySQL-DB-Instance und jedes Read Replica neu.

  4. Warten Sie, bis alle GTID-Transaktionen auf alle Lesereplikate angewendet wurden. Um zu überprüfen, ob diese angewendet werden, führen Sie die folgenden Schritte aus:

    1. Führen Sie für die MySQL-DB-Instance den folgenden Befehl aus:

      MySQL 8.4

      SHOW BINARY LOG STATUS

      MySQL 5.7 und 8.0

      SHOW MASTER STATUS

      Die Ausgabe sollte in etwa wie folgt aussehen.

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

      Notieren Sie die Datei und Position in Ihrer Ausgabe.

    2. Verwenden Sie bei jedem Lesereplikat die Datei- und Positionsinformationen der Quell-Instance im vorherigen Schritt, um die folgende Abfrage auszuführen.

      MySQL 8.4 und MySQL 8.0.26 und höhere MySQL-8.0-Versionen

      SELECT SOURCE_POS_WAIT('file', position);

      MySQL 5.7

      SELECT MASTER_POS_WAIT('file', position);

      Führen Sie die folgende Anweisung aus, wenn der Dateiname mysql-bin-changelog.000031 lautet und die Position 107 ist:

      MySQL 8.4 und MySQL 8.0.26 und höhere MySQL-8.0-Versionen

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

      MySQL 5.7

      SELECT MASTER_POS_WAIT('mysql-bin-changelog.000031', 107);
  5. Setzen Sie die GTID-Parameter zurück, um die GTID-basierte Replikation zu deaktivieren:

    1. Die Parametergruppe, die der MySQL-DB-Instance zugeordnet ist, und jedes Read Replica muss die folgenden Parametereinstellungen haben:

      • gtid_modeOFF

      • enforce_gtid_consistencyOFF

    2. Starten Sie die MySQL-DB-Instance und jedes Read Replica neu.