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.
Erweitertes Binlog für Aurora MySQL einrichten
Das erweiterte Binärprotokoll reduziert den durch die Aktivierung des Binärprotokolls verursachten Rechenleistungs-Overhead, der in bestimmten Fällen bis zu 50 % betragen kann. Mit einem erweiterten Binärprotokoll kann dieser Overhead auf etwa 13 % reduziert werden. Damit der Overhead reduziert wird, schreibt das erweiterte Binärprotokoll die Binär- und Transaktionsprotokolle parallel in den Speicher, wodurch die zum Zeitpunkt des Transaktions-Commits geschriebenen Daten minimiert werden.
Die Verwendung des erweiterten Binärprotokolls verbessert außerdem die Datenbankwiederherstellungszeit nach Neustarts und Failovers um bis zu 99 % im Vergleich zum Community-MySQL-Binärprotokoll. Das erweiterte Binärprotokoll ist mit bestehenden binlogbasierten Workloads kompatibel und Sie interagieren damit genauso wie mit dem Community-MySQL-Binärprotokoll.
Das erweiterte Binlog ist auf Aurora MySQL Version 3.03.1 und höher verfügbar.
Themen
Konfiguration erweiterter Binärprotokollparameter
Sie können zwischen Community-MySQL-Binärprotokoll und erweitertem Binärprotokoll wechseln, indem Sie die Parameter für das erweiterte Binärprotokoll aktivieren/deaktivieren. Die bestehenden Binärprotokollbenutzer können die Binärprotokolldateien weiterhin lesen und verarbeiten, ohne dass es zu Lücken in der Binärprotokolldateifolge kommt.
Um das erweiterte Binlog zu aktivieren, legen Sie die folgenden Parameter fest:
Parameter | Standard | Beschreibung |
---|---|---|
binlog_format |
– | Legen Sie den Parameter binlog_format auf das binäre Protokollierungsformat Ihrer Wahl fest, um das erweiterte Binärprotokoll zu aktivieren. Stellen Sie sicher, dass der binlog_format parameter nicht auf AUS eingestellt ist. Weitere Informationen finden Sie unter Konfiguration der binären Protokollierung mit Aurora MySQL. |
aurora_enhanced_binlog |
0 |
Legen Sie den Wert dieses Parameters in der Parametergruppe des DB-Clusters, die mit dem Aurora-MySQL-Cluster verknüpft ist, auf 1 fest. Wenn Sie den Wert dieses Parameters ändern, müssen Sie die Writer-Instance neu starten, wenn für den Wert DBClusterParameterGroupStatus pending-reboot angezeigt wird. |
binlog_backup |
1 |
Deaktivieren Sie diesen Parameter, um das erweiterte Binärprotokoll zu aktivieren. Legen Sie dazu den Wert dieses Parameters auf 0 fest. |
binlog_replication_globaldb |
1 |
Deaktivieren Sie diesen Parameter, um das erweiterte Binärprotokoll zu aktivieren. Legen Sie dazu den Wert dieses Parameters auf 0 fest. |
Wichtig
Sie können die Parameter binlog_backup
und binlog_replication_globaldb
nur deaktivieren, wenn Sie das erweiterte Binärprotokoll verwenden.
Um das erweiterte Binlog zu deaktivieren, legen Sie die folgenden Parameter fest:
Parameter | Beschreibung |
---|---|
aurora_enhanced_binlog |
Legen Sie den Wert dieses Parameters in der Parametergruppe des DB-Clusters, die mit dem Aurora-MySQL-Cluster verknüpft ist, auf 0 fest. Sobald Sie den Wert dieses Parameters ändern, müssen Sie die Writer-Instance neu starten, wenn für den Wert DBClusterParameterGroupStatus pending-reboot angezeigt wird. |
binlog_backup |
Aktivieren Sie diesen Parameter, wenn Sie das erweiterte Binärprotokoll deaktivieren. Legen Sie dazu den Wert dieses Parameters auf 1 fest. |
binlog_replication_globaldb |
Aktivieren Sie diesen Parameter, wenn Sie das erweiterte Binärprotokoll deaktivieren. Legen Sie dazu den Wert dieses Parameters auf 1 fest. |
Um zu überprüfen, ob das erweiterte Binärprotokoll aktiviert ist, verwenden Sie den folgenden Befehl im MySQL-Client:
mysql>
show status like 'aurora_enhanced_binlog';+------------------------+--------+ | Variable_name | Value | +------------------------+--------+ | aurora_enhanced_binlog | ACTIVE | +------------------------+--------+ 1 row in set (0.00 sec)
Wenn das erweiterte Binärprotokoll aktiviert ist, wird in der Ausgabe ACTIVE
für aurora_enhanced_binlog
angezeigt.
Sonstige zugehörige Parameter
Wenn Sie das erweiterte Binärprotokoll aktivieren, sind folgende Parameter betroffen:
Der Parameter
max_binlog_size
ist sichtbar, kann aber nicht geändert werden. Sein Standardwert134217728
wird automatisch in268435456
geändert, wenn das erweiterte Binärprotokoll aktiviert ist.Im Gegensatz zum Community-MySQL-Binärprotokoll fungiert
binlog_checksum
nicht als dynamischer Parameter, wenn das erweiterte Binärprotokoll aktiviert ist. Damit die Änderung an diesem Parameter wirksam wird, müssen Sie den DB-Cluster manuell neu starten, auch wenn fürApplyMethod
immediate
festgelegt ist.Der Wert, den Sie für den Parameter
binlog_order_commits
festlegen, hat keinen Einfluss auf die Reihenfolge der Commits, wenn das erweiterte Binärprotokoll aktiviert ist. Die Commits werden immer ohne weitere Auswirkungen auf die Leistung angeordnet.
Unterschiede zwischen erweitertem Binärprotokoll und Community-MySQL-Binärprotokoll
Das erweiterte Binlog interagiert anders mit Klonen, Backups und der globalen Aurora-Datenbank als das Community-MySQL-Binlog. Bevor Sie das erweiterte Binärprotokoll verwenden, sollten Sie sich mit den folgenden Unterschieden vertraut machen.
Verbesserte Binlogdateien aus dem Quell-DB-Cluster sind auf einem geklonten DB-Cluster nicht verfügbar.
Verbesserte Binlogdateien sind nicht in Aurora-Backups enthalten. Daher sind erweiterte Binärprotokolldateien aus dem Quell-DB-Cluster nach der Wiederherstellung eines DB-Clusters trotz einer für ihn festgelegten Aufbewahrungsfrist nicht verfügbar.
Bei Verwendung mit einer globalen Aurora-Datenbank werden die erweiterten Binärprotokolldateien des primären DB-Clusters nicht auf den DB-Cluster in den sekundären Regionen repliziert.
Beispiele
Die folgenden Beispiele veranschaulichen die Unterschiede zwischen dem erweiterten Binärprotokoll und dem Community-MySQL-Binärprotokoll.
Auf einem wiederhergestellten oder geklonten DB-Cluster
Wenn das erweiterte Binärprotokoll aktiviert ist, sind die historischen Binärprotokolldateien im wiederhergestellten oder geklonten DB-Cluster nicht verfügbar. Wenn Binlog nach einem Wiederherstellungs- oder Klonvorgang aktiviert ist, beginnt der neue DB-Cluster mit dem Schreiben seiner eigenen Sequenz von Binlogdateien, beginnend bei 1 (mysql-bin-changelog.000001).
Um das erweiterte Binärprotokoll nach einem Wiederherstellungs- oder Klonvorgang zu aktivieren, legen Sie die erforderlichen DB-Cluster-Parameter auf dem wiederhergestellten oder geklonten DB-Cluster fest. Weitere Informationen finden Sie unter Konfiguration erweiterter Binärprotokollparameter.
Beispiel: Der Klonen- oder Wiederherstellungsvorgang wird ausgeführt, wenn das erweiterte Binlog aktiviert ist
Quell-DB-Cluster:
mysql>
show binary logs;+----------------------------+-----------+-----------+ | Log_name | File_size | Encrypted | +----------------------------+-----------+-----------+ | mysql-bin-changelog.000001 | 156 | No | | mysql-bin-changelog.000002 | 156 | No | | mysql-bin-changelog.000003 | 156 | No | | mysql-bin-changelog.000004 | 156 | No | --> Enhanced Binlog turned on | mysql-bin-changelog.000005 | 156 | No | --> Enhanced Binlog turned on | mysql-bin-changelog.000006 | 156 | No | --> Enhanced Binlog turned on +----------------------------+-----------+-----------+ 6 rows in set (0.00 sec)
In einem wiederhergestellten oder geklonten DB-Cluster werden Binärprotokolldateien nicht gesichert, wenn das erweiterte Binärprotokoll aktiviert ist. Um Unterbrechungen in den Binärprotokolldaten zu vermeiden, sind die Binärprotokolldateien, die vor dem Aktivieren des erweiterten Binärprotokolls geschrieben wurden, ebenfalls nicht verfügbar.
mysql>
show binary logs;+----------------------------+-----------+-----------+ | Log_name | File_size | Encrypted | +----------------------------+-----------+-----------+ | mysql-bin-changelog.000001 | 156 | No | --> New sequence of Binlog files +----------------------------+-----------+-----------+ 1 row in set (0.00 sec)
Beispiel: Der Klonen- oder Wiederherstellungsvorgang wird ausgeführt, wenn das erweiterte Binlog ausgeschaltet ist
Quell-DB-Cluster:
mysql>
show binary logs;+----------------------------+-----------+-----------+ | Log_name | File_size | Encrypted | +----------------------------+-----------+-----------+ | mysql-bin-changelog.000001 | 156 | No | | mysql-bin-changelog.000002 | 156 | No | --> Enhanced Binlog enabled | mysql-bin-changelog.000003 | 156 | No | --> Enhanced Binlog enabled | mysql-bin-changelog.000004 | 156 | No | | mysql-bin-changelog.000005 | 156 | No | | mysql-bin-changelog.000006 | 156 | No | +----------------------------+-----------+-----------+ 6 rows in set (0.00 sec)
Das erweiterte Binlog ist danach mysql-bin-changelog.000003
deaktiviert. In einem wiederhergestellten oder geklonten DB-Cluster sind Binärprotokolldateien verfügbar, die nach dem Deaktivieren des erweiterten Binärprotokoll geschrieben wurden.
mysql>
show binary logs;+----------------------------+-----------+-----------+ | Log_name | File_size | Encrypted | +----------------------------+-----------+-----------+ | mysql-bin-changelog.000004 | 156 | No | | mysql-bin-changelog.000005 | 156 | No | | mysql-bin-changelog.000006 | 156 | No | +----------------------------+-----------+-----------+ 1 row in set (0.00 sec)
In einer Amazon Aurora Global Database
In einer Amazon Aurora Global Database werden die Binärprotokolldaten des primären DB-Clusters nicht auf den sekundären DB-Cluster repliziert. Nach einem regionsübergreifenden Failover-Prozess sind die Binärprotokolldaten im neu hochgestuften primären DB-Cluster nicht verfügbar. Wenn Binlog aktiviert ist, startet der neu hochgestufte DB-Cluster seine eigene Sequenz von Binlogdateien, beginnend bei 1 (mysql-bin-changelog.000001).
Um das erweiterte Binärprotokoll nach einem Failover zu aktivieren, müssen Sie die erforderlichen DB-Cluster-Parameter auf dem sekundären DB-Cluster festlegen. Weitere Informationen finden Sie unter Konfiguration erweiterter Binärprotokollparameter.
Beispiel: Der globale Datenbank-Failover-Vorgang wird ausgeführt, wenn das erweiterte Binlog aktiviert ist
Alter primärer DB-Cluster (vor dem Failover):
mysql>
show binary logs;+----------------------------+-----------+-----------+ | Log_name | File_size | Encrypted | +----------------------------+-----------+-----------+ | mysql-bin-changelog.000001 | 156 | No | | mysql-bin-changelog.000002 | 156 | No | | mysql-bin-changelog.000003 | 156 | No | | mysql-bin-changelog.000004 | 156 | No | --> Enhanced Binlog enabled | mysql-bin-changelog.000005 | 156 | No | --> Enhanced Binlog enabled | mysql-bin-changelog.000006 | 156 | No | --> Enhanced Binlog enabled +----------------------------+-----------+-----------+ 6 rows in set (0.00 sec)
Neuer primärer DB-Cluster (nach dem Failover):
Binärprotokolldateien werden nicht in sekundäre Regionen repliziert, wenn das erweiterte Binärprotokoll aktiviert ist. Um Unterbrechungen in den Binärprotokolldaten zu vermeiden, sind die Binärprotokolldateien, die vor dem Aktivieren des erweiterten Binärprotokolls geschrieben wurden, nicht verfügbar.
mysql>
show binary logs;+----------------------------+-----------+-----------+ | Log_name | File_size | Encrypted | +----------------------------+-----------+-----------+ | mysql-bin-changelog.000001 | 156 | No | --> Fresh sequence of Binlog files +----------------------------+-----------+-----------+ 1 row in set (0.00 sec)
Beispiel: Ein globaler Datenbank-Failover-Vorgang wird ausgeführt, wenn das erweiterte Binlog ausgeschaltet ist
Quell-DB-Cluster:
mysql>
show binary logs;+----------------------------+-----------+-----------+ | Log_name | File_size | Encrypted | +----------------------------+-----------+-----------+ | mysql-bin-changelog.000001 | 156 | No | | mysql-bin-changelog.000002 | 156 | No | --> Enhanced Binlog enabled | mysql-bin-changelog.000003 | 156 | No | --> Enhanced Binlog enabled | mysql-bin-changelog.000004 | 156 | No | | mysql-bin-changelog.000005 | 156 | No | | mysql-bin-changelog.000006 | 156 | No | +----------------------------+-----------+-----------+ 6 rows in set (0.00 sec)
Wiederhergestellter oder geklonter DB-Cluster:
Das erweiterte Binlog wird danach deaktiviert. mysql-bin-changelog.000003
Binärprotokolldateien, die nach dem Deaktivieren des erweiterten Binärprotokolls geschrieben wurden, werden repliziert und sind im neu hochgestuften DB-Cluster verfügbar.
mysql>
show binary logs;+----------------------------+-----------+-----------+ | Log_name | File_size | Encrypted | +----------------------------+-----------+-----------+ | mysql-bin-changelog.000004 | 156 | No | | mysql-bin-changelog.000005 | 156 | No | | mysql-bin-changelog.000006 | 156 | No | +----------------------------+-----------+-----------+ 3 rows in set (0.00 sec)
CloudWatch Amazon-Metriken für erweitertes Binlog
Die folgenden CloudWatch Amazon-Metriken werden nur veröffentlicht, wenn das erweiterte Binlog aktiviert ist.
CloudWatch Metrik | Beschreibung | Einheiten |
---|---|---|
ChangeLogBytesUsed | Die Menge des vom Speicherplatzes, der vom erweiterten Binärprotokoll belegt wird. | Bytes |
ChangeLogReadIOPs | Die Anzahl von Lese-I/O-Operationen, die im erweiterten Binärprotokoll in einem fünfminütigen Intervalls durchgeführt wurden. | Anzahl pro 5 Minuten |
ChangeLogWriteIOPs | Die Anzahl von Schreib-I/O-Operationen, die im erweiterten Binärprotokoll in einem fünfminütigen Intervalls durchgeführt wurden. | Anzahl pro 5 Minuten |
Beschränkungen für das erweiterte Binärprotokoll
Die folgenden Einschränkungen gelten für DB-Cluster von Amazon Aurora, wenn das erweiterte Binärprotokoll aktiviert ist.
-
Das erweiterte Binlog wird nur auf Aurora MySQL Version 3.03.1 und höher unterstützt.
-
Die auf dem primären DB-Cluster geschriebenen erweiterten Binärprotokolldateien werden nicht in die geklonten oder wiederhergestellten DB-Cluster kopiert.
-
Bei Verwendung mit Amazon Aurora Global Database werden die erweiterten Binärprotokolldateien des primären DB-Clusters nicht auf sekundäre DB-Cluster repliziert. Daher sind die historischen Binärprotokolldaten nach dem Failover-Prozess im neuen primären DB-Cluster nicht verfügbar.
-
Die folgenden Binärprotokoll-Konfigurationsparameter werden ignoriert:
-
binlog_group_commit_sync_delay
-
binlog_group_commit_sync_no_delay_count
-
binlog_max_flush_queue_time
-
-
Sie können eine beschädigte Tabelle in einer Datenbank nicht löschen oder umbenennen. Um diese Tabellen zu löschen, können Sie Kontakt aufnehmen. Support
-
Der Binärprotokoll-I/O-Cache ist deaktiviert, wenn das erweiterte Binärprotokoll aktiviert ist. Weitere Informationen finden Sie unter Optimierung der binären Protokollreplikation für Aurora My SQL.
Anmerkung
Das erweiterte Binärprotokoll bietet ähnliche Verbesserungen der Leseleistung wie der Binärprotokoll-I/O-Cache und deutliche Verbesserungen der Schreibleistung.
-
Die Rückverfolgungsfunktion wird nicht unterstützt. Das erweiterte Binärprotokoll kann in einem DB-Cluster unter den folgenden Bedingungen nicht aktiviert werden:
Für den DB-Cluster ist derzeit die Rückverfolgungsfunktion aktiviert.
DB-Cluster, in dem die Backtrack-Funktion zuvor aktiviert war, jetzt aber deaktiviert ist.
Der DB-Cluster wurde aus einem Quell-DB-Cluster oder einem Snapshot mit aktivierter Rückverfolgungsfunktion wiederhergestellt.