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.
Transaktionen replizieren mit GTIDs
Die folgenden gespeicherten Prozeduren steuern, wie Transaktionen repliziert werden, indem globale Transaktions-Identifikatoren (GTIDs) mit RDS für My verwendet werden. SQL Weitere Hinweise zur Replikation auf Basis von GTIDs with RDS für My finden Sie SQL unter. Verwenden der GTID basierten Replikation
Wenn Sie gespeicherte Prozeduren verwenden, um die Replikation mit einem Replikationsbenutzer zu verwaltencaching_sha2_password
, müssen Sie bei der Konfiguration TLS Folgendes SOURCE_SSL=1
angeben: caching_sha2_password
ist das Standard-Authentifizierungs-Plugin RDS für My SQL 8.4.
Überspringt die Replikation einer Transaktion mit der angegebenen globalen Transaktions-ID (GTID) auf einer My SQL DB-Instance.
Sie können dieses Verfahren für die Notfallwiederherstellung verwenden, wenn bekannt ist, dass eine bestimmte GTID Transaktion ein Problem verursacht. Verwenden Sie diese gespeicherte Prozedur, um die problematische Transaktion zu überspringen. Problematisch sind beispielsweise Transaktionen, die die Replikation deaktivieren, wichtige Daten löschen oder dafür sorgen, dass die DB-Instance nicht mehr verfügbar ist.
Syntax
CALL mysql.rds_skip_transaction_with_gtid (
gtid_to_skip
);
Parameter
-
gtid_to_skip
-
Die GTID Replikationstransaktion, die übersprungen werden soll.
Nutzungshinweise
Die Prozedur mysql.rds_skip_transaction_with_gtid
muss vom Hauptbenutzer ausgeführt werden.
Dieses Verfahren wird RDS für alle My SQL 5.7-Versionen, alle RDS für My SQL 8.0-Versionen und alle RDS für My SQL 8.4-Versionen unterstützt.
Beispiele
Im folgenden Beispiel wird die Replikation der Transaktion mit dem GTID 3E11FA47-71CA-11E1-9E33-C80AA9429562:23
übersprungen.
CALL mysql.rds_skip_transaction_with_gtid('3E11FA47-71CA-11E1-9E33-C80AA9429562:23');
Initiiert die Replikation von einem aus und stoppt die Replikation unmittelbar nach der angegebenen globalen Transaktions-ID (GTID).
Syntax
CALL mysql.rds_start_replication_until_gtid(
gtid
);
Parameter
-
gtid
-
GTIDDanach soll die Replikation beendet werden.
Nutzungshinweise
Die Prozedur mysql.rds_start_replication_until_gtid
muss vom Hauptbenutzer ausgeführt werden.
Dieses Verfahren wird RDS für alle My SQL 5.7-Versionen, alle RDS für My SQL 8.0-Versionen und alle RDS für My SQL 8.4-Versionen unterstützt.
Sie können diese Prozedur mit verzögerter Replikation für die Notfallwiederherstellung verwenden. Wenn Sie die verzögerte Replikation konfiguriert haben, können Sie diese Prozedur verwenden, um alle Änderungen bis zu einem Zeitpunkt unmittelbar vor Eintreten des Notfalls in einem verzögerten Lesereplikat wiederherzustellen. Nachdem diese Prozedur die Replikation gestoppt hat, können Sie das Lesereplikat zur neuen primären DB-Instance hochstufen (siehe die Anleitung unter Hochstufen eines Lesereplikats zur eigenständigen DB-Instance.
Sie können die verzögerte Replikation mit den folgenden gespeicherten Prozeduren konfigurieren:
Wenn der Parameter gtid
eine Transaktion angibt, die bereits von dem Replikat ausgeführt wurde, wird die Replikation sofort gestoppt.
Beispiele
Im folgenden Beispiel wird die Replikation initiiert und die Änderungen repliziert, bis sie GTID 3E11FA47-71CA-11E1-9E33-C80AA9429562:23
call mysql.rds_start_replication_until_gtid('3E11FA47-71CA-11E1-9E33-C80AA9429562:23');