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.
Verwalten von Aktiv/Aktiv-Clustern
Mit den folgenden gespeicherten Prozeduren werden Aktiv/Aktiv-Cluster von RDS für MySQL eingerichtet und verwaltet. Weitere Informationen finden Sie unter Konfigurieren von Aktiv/Aktiv-Clustern von RDS für MySQL.
Diese gespeicherten Prozeduren sind nur für DB-Instances von RDS für MySQL verfügbar, auf denen die folgenden Versionen ausgeführt werden:
-
Alle MySQL 8.4-Versionen
-
MySQL 8.0.35 und höhere Unterversionen
Themen
mysql.rds_group_replication_advance_gtid
Erstellt Platzhalter-GTIDs für die aktuelle DB-Instance.
Syntax
CALL mysql.rds_group_replication_advance_gtid(begin_id,end_id,server_uuid);
Parameter
-
begin_id -
Die zu erstellende Start-Transaktions-ID.
-
end_id -
Die zu erstellende Ende-Transaktions-ID.
-
begin_id -
Der Parameter
group_replication_group_namefür die zu erstellende Transaktion. Der Parametergroup_replication_group_nameist als UUID in der DB-Parametergruppe angegeben, die der DB-Instance zugeordnet ist.
Nutzungshinweise
In einem Aktiv/Aktiv-Cluster müssen alle GTID-Transaktionen, die auf der neuen DB-Instance ausgeführt werden, auf den anderen Mitgliedern des Clusters vorhanden sein, damit eine DB-Instance einer Gruppe hinzugefügt werden kann. In ungewöhnlichen Situationen kann eine neue DB-Instance mehr Transaktionen haben, wenn diese ausgeführt werden, bevor die Instance der Gruppe hinzugefügt wird. In diesem Fall können Sie keine vorhandenen Transaktionen entfernen. Sie können jedoch diese Prozedur anwenden, um die entsprechenden Platzhalter-GTIDs auf den anderen DB-Instances in der Gruppe zu erstellen. Vergewissern Sie sich vorher, dass sich die Transaktionen nicht auf die replizierten Daten auswirken.
Wenn Sie diese Prozedur aufrufen, werden GTID-Transaktionen von server_uuid:begin_id-end_id mit leerem Inhalt erstellt. Um Replikationsprobleme zu vermeiden, sollten Sie diese Prozedur unter keinen anderen Bedingungen anwenden.
Wichtig
Rufen Sie diese Prozedur nicht auf, wenn der Aktiv/Aktiv-Cluster einwandfrei funktioniert. Rufen Sie diese Prozedur nur auf, wenn Sie sich der möglichen Konsequenzen der von Ihnen erstellten Transaktionen bewusst sind. Der Aufruf dieser Prozedur kann zu inkonsistenten Daten führen.
Beispiel
Im folgenden Beispiel werden Platzhalter-GTIDs für die aktuelle DB-Instance erstellt:
CALL mysql.rds_group_replication_advance_gtid(5,6, '11111111-2222-3333-4444-555555555555');
mysql.rds_group_replication_create_user
Erstellt den Replikationsbenutzer rdsgrprepladmin für die Gruppenreplikation auf der DB-Instance.
Syntax
CALL mysql.rds_group_replication_create_user(replication_user_password);
Parameter
-
replication_user_password -
Das Passwort des Replikationsbenutzers
rdsgrprepladmin.
Nutzungshinweise
-
Das Passwort des Replikationsbenutzers
rdsgrprepladminmuss auf allen DB-Instances in einem Aktiv/Aktiv-Cluster identisch sein. -
Der Benutzername
rdsgrprepladminist für Gruppenreplikationsverbindungen reserviert. Kein anderer Benutzer, einschließlich des Masterbenutzers, darf diesen Benutzernamen haben.
Beispiel
Im folgenden Beispiel wird der Replikationsbenutzer rdsgrprepladmin für die Gruppenreplikation auf der DB-Instance erstellt:
CALL mysql.rds_group_replication_create_user('password');
mysql.rds_group_replication_set_recovery_channel
Legt den Kanal group_replication_recovery für einen Aktiv/Aktiv-Cluster fest. Die Prozedur verwendet den reservierten Benutzer rdsgrprepladmin, um den Kanal zu konfigurieren.
Syntax
CALL mysql.rds_group_replication_set_recovery_channel(replication_user_password);
Parameter
-
replication_user_password -
Das Passwort des Replikationsbenutzers
rdsgrprepladmin.
Nutzungshinweise
Das Passwort des Replikationsbenutzers rdsgrprepladmin muss auf allen DB-Instances in einem Aktiv/Aktiv-Cluster identisch sein. Durch Aufrufen von mysql.rds_group_replication_create_user wird das Passwort festgelegt.
Beispiel
Im folgenden Beispiel wird der Kanal group_replication_recovery für einen Aktiv/Aktiv-Cluster festgelegt:
CALL mysql.rds_group_replication_set_recovery_channel('password');
mysql.rds_group_replication_start
Startet die Gruppenreplikation auf der aktuellen DB-Instance.
Syntax
CALL mysql.rds_group_replication_start(bootstrap);
Parameter
-
bootstrap -
Dieser Wert gibt an, ob eine neue Gruppe initialisiert oder einer vorhandenen Gruppe hinzugefügt werden soll.
1initialisiert eine neue Gruppe mit der aktuellen DB-Instance.0verbindet die aktuelle DB-Instance mit einer vorhandenen Gruppe, indem eine Verbindung mit den Endpunkten hergestellt wird, die im Parametergroup_replication_group_seedsder DB-Parametergruppe definiert sind, die der DB-Instance zugeordnet ist.
Beispiel
Im folgenden Beispiel wird eine neue Gruppe mit der aktuellen DB-Instance initialisiert:
CALL mysql.rds_group_replication_start(1);
mysql.rds_group_replication_stop
Stoppt die Gruppenreplikation auf der aktuellen DB-Instance.
Syntax
CALL mysql.rds_group_replication_stop();
Nutzungshinweise
Wenn Sie die Replikation auf einer DB-Instance stoppen, hat dies keine Auswirkungen auf andere DB-Instances im Aktiv/Aktiv-Cluster.