

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.

# Konfigurieren von Replikationsfiltern mit MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.ReplicationFilters"></a>

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 eine DB-Instance mit Read Replicas in verschiedenen AWS-Regionen, um unterschiedliche Datenbanken oder Tabellen in verschiedenen AWS-Regionen zu replizieren.

**Anmerkung**  
Sie können Replikationsfilter verwenden, um anzugeben, welche Datenbanken und Tabellen mit einer primären MariaDB-Instance repliziert werden, die als Replikat in einer eingehenden Replikationstopologie konfiguriert ist. Weitere Informationen zu dieser Konfiguration finden Sie unter [Konfigurieren der Replikation der Binärprotokolldateiposition mit einer externen Quell-Instance](MySQL.Procedural.Importing.External.Repl.md).

**Topics**
+ [Einstellen der Parameter der Replikationsfilter bei RDS für MariaDB](#USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Configuring)
+ [Einschränkungen der Replikationsfilter bei RDS für MariaDB](#USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Limitations)
+ [Beispiele für Replikationsfilter bei RDS für MariaDB](#USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Examples)
+ [Anzeigen der Replikationsfilter für ein Lesereplikat](#USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Viewing)

## Einstellen der Parameter der Replikationsfilter bei RDS für MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Configuring"></a>

Um Replikationsfilter zu konfigurieren, legen Sie die folgenden Filterparameter für die Replikation fest:
+ `replicate-do-db` – Repliziert Änderungen der angegebenen Datenbanken. Wenn Sie diesen Parameter für ein Lesereplikat festlegen, werden nur die im Parameter angegebenen Datenbanken repliziert.
+ `replicate-ignore-db` – Repliziert keine Änderungen der angegebenen Datenbanken. Wenn der Parameter `replicate-do-db` für ein Lesereplikat 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 der Parameter `replicate-do-db` oder `replicate-ignore-db` festgelegt ist, muss die Datenbank, die die angegebenen Tabellen enthält, in die Replikation mit dem Lesereplikat einbezogen werden.
+ `replicate-ignore-table` – Repliziert keine Änderungen der angegebenen Tabellen. Wenn der Parameter `replicate-do-table` für ein Lesereplikat 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 der Parameter `replicate-do-db` oder `replicate-ignore-db` festgelegt ist, müssen Sie die Datenbank, welche die angegebenen Tabellen enthält, in die Replikation mit dem Lesereplikat einbeziehen.
+ `replicate-wild-ignore-table` – Repliziert keine Tabellen basierend auf den angegebenen Namensmustern für Datenbanken und Tabellen. Die Platzhalterzeichen `%` und `_` werden unterstützt. Wenn die Parameter `replicate-do-table` oder `replicate-wild-do-table` für ein Lesereplikat festgelegt sind, wird dieser Parameter nicht ausgewertet.

Die Parameter werden in der angegebenen Reihenfolge ausgewertet. Weitere Informationen darüber, wie diese Parameter funktionieren, finden Sie in der [Dokumentation für MariaDB](https://mariadb.com/kb/en/replication-filters/#replication-filters-for-replication-slaves).

Standardmäßig hat jeder dieser Parameter einen leeren Wert. Sie können diese Parameter auf jedem Lesereplikat 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 [Konfigurieren der Binärprotokollierung für MariaDB](USER_LogAccess.MariaDB.BinaryFormat.md).

**Anmerkung**  
Alle DDL-Anweisungen (Data Definition Language) werden unabhängig von der Einstellung `binlog_format` für die Quell-DB-Instance als Anweisungen repliziert. 

## Einschränkungen der Replikationsfilter bei RDS für MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Limitations"></a>

Folgende Einschränkungen gelten für Replikationsfilter bei RDS für MariaDB:
+ Jeder Filterparameter für die Replikation hat ein Limit von 2 000 Zeichen.
+ Kommas werden in Replikationsfiltern nicht unterstützt.
+ Die Optionen `binlog_do_db` und `binlog_ignore_db` von MariaDB für binäre Protokollfilter werden nicht unterstützt.
+ Die Replikationsfilterung unterstützt keine XA-Transaktionen.

  Weitere Informationen finden Sie unter [Einschränkungen bei XA-Transaktionen](https://dev.mysql.com/doc/refman/8.0/en/xa-restrictions.html) in der MySQL-Dokumentation.
+ Die Replikationsfilterung wird für RDS für MariaDB Version 10.2 nicht unterstützt.

## Beispiele für Replikationsfilter bei RDS für MariaDB
<a name="USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Examples"></a>

Um die Replikationsfilter für ein Lesereplikat zu konfigurieren, ändern Sie die Parameter der Replikationsfilter in der Parametergruppe, die dem Lesereplikat zugeordnet ist.

**Anmerkung**  
Eine Standard-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-Parametergruppen finden Sie unter [Parametergruppen für Amazon RDS](USER_WorkingWithParamGroups.md).

Sie können Parameter in einer Parametergruppe mithilfe von AWS-Managementkonsole, AWS CLI oder der RDS-API festlegen. Weitere Informationen zum Festlegen von Parametern finden Sie unter [Ändern von Parametern in einer DB-Parametergruppe in Amazon RDS](USER_WorkingWithParamGroups.Modifying.md). Wenn Sie Parameter in einer Parametergruppe festlegen, verwenden alle DB-Instances, die der Parametergruppe zugeordnet sind, diese Parametereinstellungen. Wenn Sie Parameter der Replikationsfilter in einer Parametergruppe festlegen, stellen Sie sicher, dass die Parametergruppe nur Lesereplikaten zugeordnet ist. Lassen Sie die Parameter der Replikationsfilter für Quell-DB-Instances leer.

In den folgenden Beispielen werden die Parameter mithilfe von festgeleg AWS CLI. Diese Beispiele legen `ApplyMethod` auf `immediate` fest, sodass die Parameteränderungen unmittelbar nach Abschluss des CLI-Befehls erfolgen. 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:
+ [Including databases in replication](#rep-filter-in-dbs-mariadb)
+ [Including tables in replication](#rep-filter-in-tables-mariadb)
+ [Including tables in replication with wildcard characters](#rep-filter-in-tables-wildcards-mariadb)
+ [Escaping wildcard characters in names](#rep-filter-escape-wildcards-mariadb)
+ [Excluding databases from replication](#rep-filter-ex-dbs-mariadb)
+ [Excluding tables from replication](#rep-filter-ex-tables-mariadb)
+ [Excluding tables from replication using wildcard characters](#rep-filter-ex-tables-wildcards-mariadb)<a name="rep-filter-in-dbs-mariadb"></a>

**Example Einschließen von Datenbanken in die Replikation**  
Das folgende Beispiel schließt die Datenbanken `mydb1` und `mydb2` in die Replikation ein. Wenn Sie `replicate-do-db` für ein Lesereplikat festlegen, werden nur die im Parameter angegebenen Datenbanken repliziert.  
Für Linux, macOS oder Unix:  

```
aws rds modify-db-parameter-group \
  --db-parameter-group-name myparametergroup \
  --parameters "[{"ParameterName": "replicate-do-db", "ParameterValue": "mydb1,mydb2", "ApplyMethod":"immediate"}]"
```
Für Windows:  

```
aws rds modify-db-parameter-group ^
  --db-parameter-group-name myparametergroup ^
  --parameters "[{"ParameterName": "replicate-do-db", "ParameterValue": "mydb1,mydb2", "ApplyMethod":"immediate"}]"
```<a name="rep-filter-in-tables-mariadb"></a>

**Example 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.  
Für Linux, macOS oder Unix:  

```
aws rds modify-db-parameter-group \
  --db-parameter-group-name myparametergroup \
  --parameters "[{"ParameterName": "replicate-do-table", "ParameterValue": "mydb1.table1,mydb1.table2", "ApplyMethod":"immediate"}]"
```
Für Windows:  

```
aws rds modify-db-parameter-group ^
  --db-parameter-group-name myparametergroup ^
  --parameters "[{"ParameterName": "replicate-do-table", "ParameterValue": "mydb1.table1,mydb1.table2", "ApplyMethod":"immediate"}]"
```<a name="rep-filter-in-tables-wildcards-mariadb"></a>

**Example Einschließen von Tabellen in die Replikation mit Platzhalterzeichen**  
Das folgende Beispiel schließt Tabellen mit Namen, die mit `orders` und `returns` beginnen, in Datenbank `mydb` in die Replikation ein.  
Für Linux, macOS oder Unix:  

```
aws rds modify-db-parameter-group \
  --db-parameter-group-name myparametergroup \
  --parameters "[{"ParameterName": "replicate-wild-do-table", "ParameterValue": "mydb.orders%,mydb.returns%", "ApplyMethod":"immediate"}]"
```
Für Windows:  

```
aws rds modify-db-parameter-group ^
  --db-parameter-group-name myparametergroup ^
  --parameters "[{"ParameterName": "replicate-wild-do-table", "ParameterValue": "mydb.orders%,mydb.returns%", "ApplyMethod":"immediate"}]"
```<a name="rep-filter-escape-wildcards-mariadb"></a>

**Example Escape-Platzhalterzeichen in Namen**  
Das folgende Beispiel zeigt, wie Sie das Escapezeichen `\` verwenden, um ein Platzhalterzeichen zu umgehen, das Teil eines Namens ist.   
Angenommen, Sie haben mehrere Tabellennamen in der Datenbank `mydb1`, die mit `my_table` beginnen, und Sie möchten diese Tabellen in die Replikation einschließen. Die Tabellennamen enthalten einen Unterstrich, der auch ein Platzhalterzeichen darstellt, sodass in dem Beispiel Unterstriche in den Tabellennamen mit Escapezeichen versehen sind.  
Für Linux, macOS oder Unix:  

```
aws rds modify-db-parameter-group \
  --db-parameter-group-name myparametergroup \
  --parameters "[{"ParameterName": "replicate-wild-do-table", "ParameterValue": "my\_table%", "ApplyMethod":"immediate"}]"
```
Für Windows:  

```
aws rds modify-db-parameter-group ^
  --db-parameter-group-name myparametergroup ^
  --parameters "[{"ParameterName": "replicate-wild-do-table", "ParameterValue": "my\_table%", "ApplyMethod":"immediate"}]"
```<a name="rep-filter-ex-dbs-mariadb"></a>

**Example Ausschließen von Datenbanken von der Replikation**  
Das folgende Beispiel schließt die Datenbanken `mydb1` und `mydb2` von der Replikation aus.  
Für Linux, macOS oder Unix:  

```
aws rds modify-db-parameter-group \
  --db-parameter-group-name myparametergroup \
  --parameters "[{"ParameterName": "replicate-ignore-db", "ParameterValue": "mydb1,mydb2", "ApplyMethod":"immediate"}]"
```
Für Windows:  

```
aws rds modify-db-parameter-group ^
  --db-parameter-group-name myparametergroup ^
  --parameters "[{"ParameterName": "replicate-ignore-db", "ParameterValue": "mydb1,mydb2", "ApplyMethod":"immediate"}]"
```<a name="rep-filter-ex-tables-mariadb"></a>

**Example Ausschließen von Tabellen von der Replikation**  
Das folgende Beispiel schließt die Tabellen `table1` und `table2` in der Datenbank `mydb1` von der Replikation aus.  
Für Linux, macOS oder Unix:  

```
aws rds modify-db-parameter-group \
  --db-parameter-group-name myparametergroup \
  --parameters "[{"ParameterName": "replicate-ignore-table", "ParameterValue": "mydb1.table1,mydb1.table2", "ApplyMethod":"immediate"}]"
```
Für Windows:  

```
aws rds modify-db-parameter-group ^
  --db-parameter-group-name myparametergroup ^
  --parameters "[{"ParameterName": "replicate-ignore-table", "ParameterValue": "mydb1.table1,mydb1.table2", "ApplyMethod":"immediate"}]"
```<a name="rep-filter-ex-tables-wildcards-mariadb"></a>

**Example Ausschließen von Tabellen von der Replikation mit Platzhalterzeichen**  
Das folgende Beispiel schließt Tabellen mit Namen, die mit `orders` und `returns` beginnen, in Datenbank `mydb` von der Replikation aus.  
Für Linux, macOS oder Unix:  

```
aws rds modify-db-parameter-group \
  --db-parameter-group-name myparametergroup \
  --parameters "[{"ParameterName": "replicate-wild-ignore-table", "ParameterValue": "mydb.orders%,mydb.returns%", "ApplyMethod":"immediate"}]"
```
Für Windows:  

```
aws rds modify-db-parameter-group ^
  --db-parameter-group-name myparametergroup ^
  --parameters "[{"ParameterName": "replicate-wild-ignore-table", "ParameterValue": "mydb.orders%,mydb.returns%", "ApplyMethod":"immediate"}]"
```

## Anzeigen der Replikationsfilter für ein Lesereplikat
<a name="USER_MariaDB.Replication.ReadReplicas.ReplicationFilters.Viewing"></a>

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 [Anzeigen von Parameterwerten für eine DB-Parametergruppe in Amazon RDS](USER_WorkingWithParamGroups.Viewing.md).
+ Stellen Sie in einem MariaDB-Client eine Verbindung zum Read-Replikat 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:
  + `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](https://dev.mysql.com/doc/refman/8.0/en/replication-administration-status.html) in der MySQL-Dokumentation.
**Anmerkung**  
Frühere Versionen von MariaDB wurden`SHOW SLAVE STATUS` anstelle von verwendet`SHOW REPLICA STATUS`. Wenn Sie vor 10.5 eine MariaDB-Version verwenden, verwenden Si `SHOW SLAVE STATUS`. 