Aurora MySQL-Datenbank-Engine-Updates vom 25.10.2022 (Version 2.11.0, kompatibel mit MySQL 5.7.12) Diese Version ist nicht für neue Kreationen verfügbar und hat das Ende der Standardunterstützung erreicht. - Amazon Aurora

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.

Aurora MySQL-Datenbank-Engine-Updates vom 25.10.2022 (Version 2.11.0, kompatibel mit MySQL 5.7.12) Diese Version ist nicht für neue Kreationen verfügbar und hat das Ende der Standardunterstützung erreicht.

Version: 2.11.0

Aurora MySQL 2.11.0 ist allgemein verfügbar. Aurora-MySQL-2.x-Versionen sind kompatibel mit MySQL 5.7.12. Weitere Informationen zu Community-Änderungen finden Sie unter Änderungen in MySQL 5.7.12 (11.04.2016, Allgemeine Verfügbarkeit).

Derzeit werden die Aurora-MySQL-Versionen 1.19.5, 1.19.6, 1.22.*, 1.23.*, 2.04.*, 2.07.*, 2.08.*, 2.09.*, 2.10.*, 2.11*, 3.01.* und 3.02.* unterstützt.

Sie können einen vorhandenen Aurora-MySQL-2.*-Datenbank-Cluster zu Aurora MySQL 2.11.0 aktualisieren. Bei Clustern mit Aurora MySQL Version 1 können Sie einen bestehenden Cluster mit Aurora MySQL 1.23 oder höher direkt zu 2.11.0 aktualisieren. Sie können auch einen Snapshot von jeder derzeit unterstützten Aurora-MySQL-Version in Aurora MySQL 2.11.0 wiederherstellen.

Wenn Sie eine globale Aurora MySQL-Datenbank auf Version 2.11.* aktualisieren und die Schreibweiterleitung aktiviert haben, müssen Sie Ihre primären und sekundären DB-Cluster auf exakt dieselbe Version aktualisieren, einschließlich des Patch-Levels, um die Schreibweiterleitung weiterhin verwenden zu können. Weitere Informationen zum Upgrade der Nebenversion einer globalen Aurora-Datenbank finden Sie unter Upgrades für Nebenversionen.

Wenn Sie Fragen oder Bedenken haben, steht Ihnen der AWS Support in den Community-Foren und über den AWS Support zur Verfügung. Weitere Informationen finden Sie unter Verwalten eines Amazon-Aurora-DB-Clusters im Amazon-Aurora-Benutzerhandbuch.

Anmerkung

Informationen zum Upgrade Ihres Aurora-MySQL-Datenbank-Clusters finden Sie unter Upgrade der Nebenversion oder des Patch-Levels eines Aurora-MySQL-DB-Clusters im Amazon-Aurora-Benutzerhandbuch.

Verbesserungen

Sicherheitsprobleme wurden behoben und CVEs:

  • Der SSL/TLS-Anbieter wurde von OpenSSL auf geändert. AWS-LC

    Dies bringt eine Reihe von Änderungen mit sich, einschließlich, aber nicht beschränkt auf, die Entfernung der Unterstützung für weniger sichere DHE-RSA-*-Verschlüsselungen.

    Weitere Informationen finden Sie unter Verwenden von TLS mit DB-Clustern von Aurora MySQL.

Die folgenden CVE-Korrekturen sind in dieser Version enthalten:

Neue Funktionen:

  • Mit der Veröffentlichung von Aurora MySQL Version 2.11 ist ein neues Betriebssystem-Upgrade verfügbar. Wir empfehlen, dass Sie dieses ausstehende Betriebssystemupdate nach dem Upgrade auf Version 2.11 auf alle Ihre Aurora-MySQL-Datenbank-Instances anwenden. Weitere Informationen finden Sie unter Arbeiten mit Betriebssystemaktualisierungen.

  • Eine neue dynamische Konfigurationsoption, innodb_deadlock_detect, kann verwendet werden, um die Deadlock-Erkennung zu deaktivieren. Auf Systemen mit hoher Parallelität kann die Deadlock-Erkennung zu einer Verlangsamung führen, wenn zahlreiche Threads auf dieselbe Sperre warten. Manchmal kann es effizienter sein, die Deadlock-Erkennung zu deaktivieren und sich auf die innodb_lock_wait_timeout-Einstellung für das Rollback von Transaktionen zu stützen, wenn ein Deadlock auftritt. (Fehler #23477773) Weitere Informationen zur Innodb-Deadlock-Erkennung finden Sie in der MySQL-Dokumentation.

  • Die Funktionen UUID_TO_BIN, BIN_TO_UUID und IS_UUID aus MySQL 8.0 wurden hinzugefügt. Weitere Informationen zur Verwendung dieser Funktionen finden Sie unter MySQL – verschiedene Funktionen.

  • Es wurde Unterstützung für Optimierer-Hinweise hinzugefügt, die es dem Benutzer ermöglichen, Aurora-MySQL-Parallelabfragen pro Tabelle oder pro Abfrage zu aktivieren oder zu deaktivieren.

  • Die Unterstützung für den R3-Instanztyp wurde entfernt.

  • Es werden jetzt R6i-Instances unterstützt.

Verbesserungen der Verfügbarkeit:

  • Es wurde ein Problem behoben, das die regionsübergreifende logische Replikation in einem Datenbank-Cluster verhindern kann, weil eine falsche Binlog-Datei und Position in die Fehlerprotokolle geschrieben wurden. Dieses Problem kann auftreten, wenn die Engine nach der Ausführung einer DDL-Anweisung neu gestartet wird.

  • Es wurde ein Problem behoben, das unter seltenen Bedingungen dazu führen kann, dass Aurora-Reader-Instances neu gestartet werden, wenn Access-Control List (ACL)-Anweisungen wie GRANT und FLUSH auf der Writer-Instance neu gestartet werden. Dieses Problem betrifft eher Reader-Instances mit einer großen Anzahl von Benutzern und ACL-Vorgängen (z. B. Berechtigungsänderungen).

  • Es wurde ein Problem behoben, das unter seltenen Bedingungen dazu führen kann, dass die Writer-Instance neu gestartet oder ein Failover durchgeführt wird, wenn eine Transaktion auf eine Zeile zugreift, die durch eine andere Transaktion gelöscht wurde.

  • Die Leistung der Volltext-Phrasensuche wurde verbessert, um den Zeitaufwand für die Suche nach Phrasen in einer Tabelle mit Volltextindizes erheblich zu reduzieren.

  • Es wurde ein Problem behoben, bei dem eine Writer-Instance nach dem Neustart bei der langsamen Wiederherstellung hängen bleibt und anschließend erneut gestartet wird. Dieses Problem tritt auf, wenn sich zum Zeitpunkt des ersten Neustarts eine große Anzahl nicht festgeschriebener Zeilen in der Datenbank befindet.

  • Es wurde ein Problem behoben, das in seltenen Fällen dazu führen kann, dass der Datenbank-Server aufgrund einer langen Semaphor-Wartezeit neu gestartet wird, wenn der Deadlock-Detector-Thread stecken bleibt.

  • Es wurde ein Problem behoben, das in seltenen Fällen dazu führen kann, dass die Datenbank aufgrund einer langen Semaphor-Wartezeit neu gestartet wird, wenn E/A-Threads blockiert werden.

  • Das schnelle Einfügen ist in dieser Aurora MySQL-Version nicht aktiviert, da ein Problem zu Inkonsistenzen beim Ausführen von Abfragen wie INSERT INTOSELECT, und führen kann. FROM Weitere Informationen zur Fast-Insert-Optimierung finden Sie unter Amazon Aurora MySQL Performance Enhancements.

Allgemeine Verbesserungen:

  • Es wurde ein Problem behoben, das dazu führen kann, dass der Datenbankserver neu gestartet wird, wenn alle der folgenden Bedingungen erfüllt sind:

    • ALLOW_INVALID_DATES ist im SQL MODE deaktiviert.

    • Der Datenbankserver verarbeitet eine INSERT-, UPDATE-, DELETE- oder SELECT-Anweisung mit einem ungültigen Wert vom Typ DATETIME, so dass der Monat nicht zwischen 1 und 12 liegt.

  • Es wurde ein Problem behoben, bei dem die Aufbewahrungsfrist für Binärprotokolle nicht eingehalten wurde, wenn Log-Bin auf OFF gesetzt war, was zu einer höheren Speicherauslastung als erwartet führte. Nach dieser Korrektur werden die Binärprotokolle entsprechend Ihrer Aufbewahrungsdauer gelöscht. Weitere Informationen zur Konfiguration des Aufbewahrungszeitraums für Binärprotokolle finden Sie im Aurora-MySQL-Benutzerhandbuch.

  • Es wurde ein Problem behoben, das dazu führen kann, dass der freie Speicherplatz auf der Datenbank-Instance reduziert wird, wenn bestimmte Data Control Language (DCL)-SQL-Anweisungen wie GRANT, FLUSH PRIVILEGES usw. auf dieser Instance ausgeführt werden. Die häufige Verwendung solcher Anweisungen kann dazu führen, dass der freie Speicherplatz immer geringer wird und die Datenbank-Instance aufgrund von out-of-memory Problemen neu gestartet wird. Die Verwendung solcher Anweisungen auf der Writer-Instance kann auch dazu führen, dass der freie Speicher auf den Reader-Instances reduziert wird.

  • Es wurde ein größerer Lesepuffer für Lesevorgänge aus den Relay-Protokollen eingeführt, um die Anzahl der E/A-Lesevorgänge zu minimieren, wodurch Konflikte zwischen den E/A- und SQL-Threads reduziert werden.

  • Es wurde ein Problem behoben, das dazu führen kann, dass die gespeicherte Prozedur mysql.rds_rotate_slow_log mit der Fehlermeldung „Die Tabelle 'mysql.slow_log_backup' existiert nicht“ fehlschlägt.

  • Es wurde ein Problem behoben, bei dem eine übermäßige Invalidierung des Abfrage-Caches zu einer höheren CPU-Auslastung und zu Latenzen auf dem Lesereplikat als erwartet führt, da das Lesereplikat die Daten von der Festplatte statt aus dem Abfrage-Cache lesen muss.

  • Es wurde ein Problem behoben, das es Benutzern ermöglichte, die Befehle INSTALL PLUGIN und UNINSTALL PLUGIN auf einer Reader-Instance auszuführen, was zu einem Deadlock bei Lock_Plugin, Lock_System_Variables_Hash und Lock_Global_System_Variables führen kann. Diese Anweisungen können jetzt nur auf der Writer-Instance in einem Datenbank-Cluster ausgeführt werden.

  • Es wurde ein Problem behoben, durch das in Clustern beim Aktivieren der Binärprotokollierung gelegentlich eine höhere Commit-Latenz erreicht wurde. Dies betrifft alle Transaktionen, die große Binlog-Ereignisse (mit einer Größe von über 500 MB) generieren.

  • Es wurde ein Problem behoben, das dazu führen kann, dass die Metrik trx_active_transactions in der Tabelle INFORMATION_SCHEMA.INNODB_METRICS einen falschen Wert enthält.

  • Es wurde ein Problem behoben, durch das die logische Replikation gestoppt werden kann, wenn die Binlog-Datei beim Ausführen eines Rollbacks zum Savepoint für eine große Transaktion inkonsistent wird.

  • Maskierte Hashes für Anmeldeinformationen in General-Log und Audit-Log werden standardmäßig unter Verwendung eines slow-query-log konsistenten Maskengeheimnisses verwendet. Dies ist über den Parameter aurora_mask_password_hashes_type konfigurierbar.

  • Es wurde ein Problem behoben, bei dem die Dauer Zero-Downtime-Restart (ZDR) in den vom Kunden beobachteten Ereignissen falsch angegeben wurde.

  • Es wurde ein Problem behoben, das dazu führen kann, dass Aufrufe von mysql_rds_import_binlog_ssl_material mit dem MySQL-Serverfehler 1457 fehlschlagen.

  • Es wurde ein Problem behoben, durch das die Initialisierung von Dump-Threads mit dem Thread zum Löschen von Binärprotokollen blockiert werden kann. Dadurch kann verhindert werden, dass die aktive Binlog-Datei rotiert und stattdessen weiter wächst oder Probleme mit neuen Binlog-Replikatverbindungen auftreten.

  • Es wurde ein Problem behoben, durch das der Abfrage-Cache veraltete Ergebnisse für eine Reader-Instance zurückgeben kann.

Integration von MySQL-Fehlerbehebungen (Community Edition)

Diese Version enthält alle Community-Fehlerbehebungen bis einschließlich 5.7, zusätzlich zu den unten aufgeführten. Weitere Informationen finden Sie unter MySQL-Fehlerbehebungen durch Aurora-MySQL-2.x-Datenbank-Engine-Updates.

  • Es wurde ein Problem behoben, bei dem der Code zum Lesen von Zeichensatzinformationen aus den Ereignistabellen von Performance-Schema-Anweisungen (z. B. events_statements_current) das gleichzeitige Schreiben in diese Zeichensatzinformationen nicht verhindert. Aufgrund dieses Problems kann der Zeichensatz für den SQL-Abfragetext möglicherweise ungültig sein, was zu einem Serverabbruch führen kann. Mit dieser Korrektur führt ein ungültiger Zeichensatz zu einer Kürzung der SQL_TEXT-Spalte und verhindert Serverabbrüche. (Fehler #23540008)

  • InnoDB: Backport einer Korrektur für Community-Fehler #25189192, Fehler #84038. Es wurde ein Problem behoben, bei dem InnoDB nach einer RENAME TABLE-Operation, bei der eine Tabelle in ein anderes Schema verschoben wurde, die Datenwörterbuchtabelle INNODB_SYS_DATAFILES nicht aktualisieren konnte. Dies führte zu einem Fehler beim Neustart, der darauf hinwies, dass die Tablespace-Datendatei nicht gefunden werden konnte.

  • InnoDB: Es wurde ein Problem behoben, bei dem der Server beim Hinzufügen eines neuen Indexes einen intern definierten Fremdschlüsselindex löschte und versuchte, einen sekundären Index, der für eine virtuell generierte Spalte definiert ist, als Fremdschlüsselindex zu verwenden, was zu einem Serverabsturz führte. InnoDB erlaubt nun einer Fremdschlüsseleinschränkung, auf einen sekundären Index zu verweisen, der für eine virtuell generierte Spalte definiert ist. (Fehler #23533396)

  • Es wurde ein Problem behoben, bei dem zwei Sitzungen, die gleichzeitig eine INSERT... ON DUPLICATE KEY UPDATE-Operation ausführten, ein Deadlock generierten. Während eines teilweisen Rollbacks eines Tupels konnte es in einer anderen Sitzung aktualisiert werden. Der Fix für diesen Fehler macht die Korrekturen für Fehler #11758237, Fehler #17604730 und Fehler #20040791 rückgängig. (Fehler #25966845)

  • Backport einer Korrektur für den Community-Fehler #27407480: Es wurde ein Problem behoben, bei dem die Rechte EXECUTE und ALTER ROUTINE den Erstellern von Routinen nicht korrekt erteilt wurden, selbst wenn automatic_sp_privileges aktiviert war.

  • Backport einer Korrektur für Community-Fehler #24671968: Es wurde ein Problem behoben, bei dem eine Abfrage falsche Ergebnisse liefern konnte, wenn die WHERE-Klausel eine abhängige Unterabfrage enthielt, die Tabelle einen sekundären Index für die Spalten in der Auswahlliste hatte, gefolgt von den Spalten in der Unterabfrage, und GROUP BY oder DISTINCT erlaubte, einen Loose Index Scan zu verwenden.

  • Es wurde ein Problem behoben, bei dem die Replikation unterbrochen wurde, wenn eine Löschanweisung für mehrere Tabellen mit Fremdschlüsseln ausgegeben wurde. (Fehler #80821)

  • Es wurde ein Problem behoben, bei dem in Sonderfällen bestimmte Slave-Fehler auch dann nicht ignoriert wurden, wenn slave_skip_errors aktiviert war. In Fällen, in denen das Öffnen und Sperren einer Tabelle fehlschlug oder Feldkonvertierungen auf einem Server fehlschlugen, auf dem die zeilenbasierte Replikation ausgeführt wird, wird der Fehler als kritisch angesehen und der Status von slave_skip_errors wird ignoriert. Die Korrektur stellt sicher, dass bei aktivierter Option slave_skip_errors alle Fehler, die beim Anwenden einer Transaktion gemeldet wurden, korrekt behandelt werden. (Fehler #70640, Fehler #17653275)

  • Es wurde ein Problem behoben, bei dem eine SET PASSWORD-Anweisung von einem MySQL 5.6-Master auf einen MySQL 5.7-Slave oder von einem MySQL 5.7-Master, bei dem die Systemvariable log_builtin_as_identified_by_password auf ON gesetzt war, auf einen MySQL 5.7-Slave repliziert wurde. Der Passwort-Hash selbst wurde ebenfalls gehasht, bevor er auf dem Slave gespeichert wurde. Das Problem ist jetzt behoben und der replizierte Passwort-Hash wird so gespeichert, wie er ursprünglich an den Slave übergeben wurde. (Fehler #24687073)

  • Es wurde ein Problem behoben, bei dem die Serialisierung eines JSON-Werts, der aus einem großen Unterdokument besteht, das in viele Ebenen von JSON-Arrays, Objekten oder beidem eingeschlossen ist, manchmal übermäßig viel Zeit in Anspruch nahm. (Fehler #23031146)

  • Anweisungen, die nicht analysiert werden können (z. B. aufgrund von Syntaxfehlern), werden nicht mehr in das Protokoll für langsame Abfragen geschrieben. (Fehler #33732907)

Vergleich mit Aurora MySQL Version 1

Die folgenden Amazon-Aurora-MySQL-Funktionen werden in Aurora-MySQL-Version 1 (mit MySQL 5.6 kompatibel), jedoch derzeit nicht in Aurora-MySQL-Version 2 (MySQL 5.7 kompatibel) unterstützt.

Kompatibilität mit MySQL 5.7

Diese Aurora-MySQL-Version ist drahtkompatibel mit MySQL 5.7 und enthält Funktionen wie JSON-Unterstützung, räumliche Indizes und generierte Spalten. Aurora MySQL verwendet eine native Implementierung der räumlichen Indexierung unter Verwendung von Kurven der Z-Ordnung, um eine > 20 x bessere Schreibleistung und eine > 10 x bessere Leseleistung als MySQL 5.7 für räumliche Datensätze zu liefern.

Diese Aurora-MySQL-Version bietet aktuell keine Unterstützung für die folgenden MySQL-5.7-Funktionen:

  • Plug-In für die Gruppenreplikation

  • Größere Seitengröße

  • Laden des InnoDB-Pufferpools beim Starten

  • Plugin für den InnoDB-Volltext-Parser

  • Replikation aus mehreren Quellen

  • Größenanpassung des Online-Pufferpools

  • Plugin für die Passwortvalidierung

  • Plugins für die Umformulierung von Abfragen

  • Replikationsfilter

  • Die SQL-Anweisung CREATE TABLESPACE