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.
Konfiguration von Replikationsfiltern mit Aurora My SQL
Sie können Replikationsfilter verwenden, um anzugeben, welche Datenbanken und Tabellen mit einem Lesereplikat repliziert werden. Replikationsfilter können Datenbanken und Tabellen in die Replikation einbeziehen oder sie von der Replikation ausschließen.
Im Folgenden finden Sie einige Anwendungsfälle für Replikationsfilter:
-
Reduzieren der Größe eines Lesereplikats. Mit Replikationsfiltern können Sie die Datenbanken und Tabellen ausschließen, die für das Lesereplikat nicht benötigt werden.
-
Ausschließen von Datenbanken und Tabellen von Lesereplikaten aus Sicherheitsgründen.
-
Replizieren verschiedener Datenbanken und Tabellen für spezifische Anwendungsfälle bei verschiedenen Lesereplikaten. Beispielsweise könnten Sie bestimmte Lesereplikate für Analysen oder Sharding verwenden.
-
Für einen DB-Cluster, der Lesereplikate in verschiedenen AWS-Regionen, um verschiedene Datenbanken oder Tabellen in verschiedenen zu replizieren AWS-Regionen.
-
Um anzugeben, welche Datenbanken und Tabellen mit einem Aurora My SQL DB-Cluster repliziert werden, der als Replikat in einer eingehenden Replikationstopologie konfiguriert ist. Weitere Informationen zu dieser Konfiguration finden Sie unter Replikation zwischen Aurora und My SQL oder zwischen Aurora und einem anderen Aurora-DB-Cluster (binäre Protokollreplikation).
Themen
Einstellung der Replikationsfilterparameter für Aurora My SQL
Um Replikationsfilter zu konfigurieren, legen Sie die folgenden Parameter fest:
-
binlog-do-db
– Repliziert Änderungen in die angegebenen Binärprotokolle. Wenn Sie diesen Parameter für einen Binlog-Quellcluster festlegen, werden nur die im Parameter angegebenen Binärprotokolle repliziert. -
binlog-ignore-db
– Repliziert keine Änderungen in die angegebenen Binärprotokolle. Wenn derbinlog-do-db
Parameter für einen Binlog-Quellcluster festgelegt ist, wird dieser Parameter nicht ausgewertet. -
replicate-do-db
– Repliziert Änderungen der angegebenen Datenbanken. Wenn Sie diesen Parameter für einen Binlog-Replikatcluster festlegen, werden nur die im Parameter angegebenen Datenbanken repliziert. -
replicate-ignore-db
– Repliziert keine Änderungen der angegebenen Datenbanken. Wenn derreplicate-do-db
Parameter für einen Binlog-Replikatcluster festgelegt ist, wird dieser Parameter nicht ausgewertet. -
replicate-do-table
– Repliziert Änderungen der angegebenen Tabellen. Wenn Sie diesen Parameter für ein Lesereplikat festlegen, werden nur die im Parameter angegebenen Tabellen repliziert. Wenn derreplicate-ignore-db
Parameterreplicate-do-db
oder festgelegt ist, stellen Sie außerdem sicher, dass die Datenbank, die die angegebenen Tabellen enthält, in die Replikation mit dem Binlog-Replikatcluster einbezogen wird. -
replicate-ignore-table
– Repliziert keine Änderungen der angegebenen Tabellen. Wenn derreplicate-do-table
Parameter für einen Binlog-Replikatcluster festgelegt ist, wird dieser Parameter nicht ausgewertet. -
replicate-wild-do-table
– Repliziert Tabellen basierend auf den angegebenen Namensmustern für Datenbanken und Tabellen. Die Platzhalterzeichen%
und_
werden unterstützt. Wenn derreplicate-ignore-db
Parameterreplicate-do-db
oder gesetzt ist, stellen Sie sicher, dass die Datenbank, die die angegebenen Tabellen enthält, in die Replikation mit dem Binlog-Replikatcluster einbezogen wird. -
replicate-wild-ignore-table
– Repliziert keine Tabellen basierend auf den angegebenen Namensmustern für Datenbanken und Tabellen. Die Platzhalterzeichen%
und_
werden unterstützt. Wenn derreplicate-wild-do-table
Parameterreplicate-do-table
oder für einen Binlog-Replikatcluster festgelegt ist, wird dieser Parameter nicht ausgewertet.
Die Parameter werden in der angegebenen Reihenfolge ausgewertet. Weitere Informationen zur Funktionsweise dieser Parameter finden Sie in der Dokumentation Meine SQL Dokumentation:
-
Allgemeine Informationen finden Sie unter Optionen und Variablen für Replikatserver
. -
Informationen darüber, wie Filterparameter für die Datenbankreplikation ausgewertet werden, finden Sie unter Optionen zur Auswertung der Replikation auf Datenbankebene und für die binäre Protokollierung
. -
Informationen darüber, wie Filterparameter für die Tabellenreplikation ausgewertet werden, finden Sie unter Optionen zur Auswertung der Replikation auf Tabellenebene
.
Standardmäßig hat jeder dieser Parameter einen leeren Wert. In jedem Binlog-Cluster können Sie diese Parameter verwenden, um Replikationsfilter festzulegen, zu ändern und zu löschen. Wenn Sie einen dieser Parameter festlegen, trennen Sie die einzelnen Filter durch ein Komma voneinander.
Sie können die Platzhalterzeichen %
und _
in den Parametern replicate-wild-do-table
und replicate-wild-ignore-table
verwenden. Der Platzhalter %
entspricht einer beliebigen Anzahl von Zeichen, und der Platzhalter _
entspricht nur einem Zeichen.
Das binäre Protokollierungsformat der Quell-DB-Instance ist wichtig für die Replikation, da es den Datensatz der Datenänderungen bestimmt. Die Einstellung des Parameters binlog_format
bestimmt, ob die Replikation zeilenbasiert oder anweisungsbasiert ist. Weitere Informationen finden Sie unter Konfiguration von Aurora MySQL.
Anmerkung
Alle Anweisungen der Data Definition Language (DDL) werden unabhängig von der binlog_format
Einstellung in der Quell-DB-Instance als Anweisungen repliziert.
Einschränkungen der Replikationsfilterung für Aurora My SQL
Die folgenden Einschränkungen gelten für die Replikationsfilterung für Aurora MySQL:
-
Replikationsfilter werden nur für Aurora My SQL Version 3 unterstützt.
-
Jeder Filterparameter für die Replikation hat ein Limit von 2.000 Zeichen.
-
Kommas werden in Replikationsfiltern nicht unterstützt.
-
Die Replikationsfilterung unterstützt keine XA-Transaktionen.
Weitere Informationen finden Sie unter Einschränkungen für XA-Transaktionen
in der SQL Dokumentation „Meine“.
Beispiele für Replikationsfilterung für Aurora My SQL
Um die Replikationsfilter für ein Lesereplikat zu konfigurieren, ändern Sie die Parameter der Replikationsfilter in der DB-Cluster-Parametergruppe, die dem Lesereplikat zugeordnet ist.
Anmerkung
Eine Standard-DB-Cluster-Parametergruppe kann nicht modifiziert werden. Erstellen Sie eine neue Parametergruppe und ordnen Sie diese der Lesereplika zu, wenn die Lesereplika eine Standardparametergruppe verwendet. Weitere Informationen zu DB-Cluster-Parametergruppen finden Sie unter Parametergruppen für Amazon Aurora.
Sie können Parameter in einer DB-Cluster-Parametergruppe festlegen, indem Sie AWS Management Console, AWS CLI, oder RDSAPI. Weitere Informationen zum Festlegen von Parametern finden Sie unter Ändern von Parametern in einer DB-Parametergruppe in Amazon Aurora. Wenn Sie Parameter in einer Parametergruppe festlegen, verwenden alle DB-Cluster, die der Parametergruppe zugeordnet sind, diese Parametereinstellungen. Wenn Sie Parameter der Replikationsfilter in einer Parametergruppe festlegen, stellen Sie sicher, dass die Parametergruppe nur Replica-Clustern zugeordnet ist. Lassen Sie die Parameter der Replikationsfilter für Quell-DB-Instances leer.
In den folgenden Beispielen werden die Parameter mit dem festgelegt AWS CLI. Diese Beispiele sind immediate
so eingestelltApplyMethod
, dass die Parameteränderungen unmittelbar nach Abschluss des CLI Befehls vorgenommen werden. Wenn Sie möchten, dass eine ausstehende Änderung nach dem Neustart des Lesereplikats angewendet wird, legen Sie ApplyMethod
auf pending-reboot
fest.
In den folgenden Beispielen werden Replikationsfilter festgelegt:
Beispiel Einschließen von Datenbanken in die Replikation
Das folgende Beispiel schließt die Datenbanken mydb1
und mydb2
in die Replikation ein.
Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Linux, macOS, oder Unix:
aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-do-db,ParameterValue='mydb1,mydb2',ApplyMethod=immediate"
Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Windows:
aws rds modify-db-cluster-parameter-group ^ --db-cluster-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-do-db,ParameterValue='mydb1,mydb2',ApplyMethod=immediate"
Beispiel Einschließen von Tabellen in die Replikation
Das folgende Beispiel schließt die Tabellen table1
und table2
in der Datenbank mydb1
in die Replikation ein.
Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Linux, macOS, oder Unix:
aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-do-table,ParameterValue='mydb1.table1,mydb1.table2',ApplyMethod=immediate"
Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Windows:
aws rds modify-db-cluster-parameter-group ^ --db-cluster-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-do-table,ParameterValue='mydb1.table1,mydb1.table2',ApplyMethod=immediate"
Beispiel Einschließen von Tabellen in die Replikation mit Platzhalterzeichen
Das folgende Beispiel schließt Tabellen mit Namen, die mit order
und return
beginnen, in Datenbank mydb
in die Replikation ein.
Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Linux, macOS, oder Unix:
aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-wild-do-table,ParameterValue='mydb.order%,mydb.return%',ApplyMethod=immediate"
Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Windows:
aws rds modify-db-cluster-parameter-group ^ --db-cluster-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-wild-do-table,ParameterValue='mydb.order%,mydb.return%',ApplyMethod=immediate"
Beispiel Ausschließen von Datenbanken von der Replikation
Das folgende Beispiel schließt die Datenbanken mydb5
und mydb6
von der Replikation aus.
Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Linux, macOS, oder Unix:
aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-ignore-db,ParameterValue='mydb5,mydb6',ApplyMethod=immediate"
Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Windows:
aws rds modify-db-cluster-parameter-group ^ --db-cluster-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-ignore-db,ParameterValue='mydb5,mydb6,ApplyMethod=immediate"
Beispiel Ausschließen von Tabellen von der Replikation
Das folgende Beispiel schließt die Tabellen table1
in Datenbank mydb5
und table2
in Datenbank mydb6
von der Replikation aus.
Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Linux, macOS, oder Unix:
aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-ignore-table,ParameterValue='mydb5.table1,mydb6.table2',ApplyMethod=immediate"
Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Windows:
aws rds modify-db-cluster-parameter-group ^ --db-cluster-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-ignore-table,ParameterValue='mydb5.table1,mydb6.table2',ApplyMethod=immediate"
Beispiel Ausschließen von Tabellen von der Replikation mit Platzhalterzeichen
Das folgende Beispiel schließt Tabellen mit Namen, die mit order
und return
beginnen, in Datenbank mydb7
von der Replikation aus.
Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Linux, macOS, oder Unix:
aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-wild-ignore-table,ParameterValue='mydb7.order%,mydb7.return%',ApplyMethod=immediate"
Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Windows:
aws rds modify-db-cluster-parameter-group ^ --db-cluster-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-wild-ignore-table,ParameterValue='mydb7.order%,mydb7.return%',ApplyMethod=immediate"
Anzeigen der Replikationsfilter für ein Lesereplikat
Sie können die Replikationsfilter für ein Lesereplikat wie folgt anzeigen:
-
Überprüfen Sie die Einstellungen der Parameter der Replikationsfilter in der dem Lesereplikat zugeordneten Parametergruppe.
Detaillierte Anweisungen finden Sie unter Parameterwerte für eine DB-Parametergruppe in Aurora anzeigen.
-
Stellen Sie in einem My SQL Client eine Verbindung zur Read Replica her und führen Sie die
SHOW REPLICA STATUS
Anweisung aus.In der Ausgabe werden in den folgenden Feldern die Replikationsfilter für das Lesereplikat angezeigt:
-
Binlog_Do_DB
-
Binlog_Ignore_DB
-
Replicate_Do_DB
-
Replicate_Ignore_DB
-
Replicate_Do_Table
-
Replicate_Ignore_Table
-
Replicate_Wild_Do_Table
-
Replicate_Wild_Ignore_Table
Weitere Informationen zu diesen Feldern finden Sie unter Überprüfen des Replikationsstatus
in der SQL Dokumentation My. -