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.
Unterstützung von MySQL-Funktionen in Amazon RDS
RDS for MySQL unterstützt die meisten Funktionen von MySQL. Einige Funktionen werden möglicherweise nur begrenzt unterstützt oder haben eingeschränkte Berechtigungen.
Sie können neue Amazon RDS Funktionen auf der Was ist neu mit Datenbank?MySQL 2022
.
Anmerkung
Die folgenden Listen sind nicht vollständig.
Themen
Unterstützte Speicher-Engines für RDS for MySQL
Während MySQL mehrere Speicher-Engines mit unterschiedlichen Fähigkeiten unterstützt, sind nicht alle von ihnen für die Wiederherstellung und Langlebigkeit von Daten optimiert. Amazon RDS unterstützt die InnoDB-Speicher-Engine für MySQL-DB-Instances vollständig. Amazon-RDS-Funktionen wie Point-In-Time-Wiederherstellung und Snapshot-Wiederherstellung erfordern eine wiederherstellbare Speicher-Engine und werden nur für die InnoDB-Speicher-Engine unterstützt. Weitere Informationen finden Sie unter Mein SQL Memcached-Support.
Die verbündete Speicher-Engine wird aktuell von Amazon RDS for MySQL nicht unterstützt.
Für von Benutzern erstellten Schemas unterstützt die MyISAM-Speicher-Engine keine verlässliche Wiederherstellung, was zu Datenverlust oder -schädigung führen kann, wenn MySQL nach einer Wiederherstellung neugestartet wird, wodurch die zeitpunktbezogene Wiederherstellung und die Snapshot-Wiederherstellung nicht ordnungsgemäß funktionieren könnten. Wenn Sie trotzdem MyISAM mit Amazon RDS-Snapshots verwenden möchten, kann dies unter Umständen hilfreich sein.
Anmerkung
Systemtabellen im mysql
-Schema können sich im MyISAM-Speicher befinden.
Wenn Sie vorhandene MyISAM-Tabellen in InnoDB-Tabellen konvertieren möchten, können Sie den Befehl ALTER TABLE
verwenden (z. B. alter table TABLE_NAME engine=innodb;
). Vergessen Sie nicht, dass MyISAM und InnoDB verschiedene Stärken und Schwächen haben, also sollten Sie eine vollständige Bewertung der Auswirkungen vornehmen, bevor Sie Ihre Anwendungen umstellen.
MySQL 5.1, 5.5 und 5.6 werden in Amazon RDS nicht mehr unterstützt. Sie können jedoch bestehende MySQL 5.1-, 5.5- und 5.6-Snapshots bei Bedarf wiederherstellen. Wenn Sie einen MySQL-5.1-, 5.5- oder 5.6-Snapshot wiederherstellen, wird die DB-Instance automatisch auf MySQL 5.7 aktualisiert.
Verwenden von memcached und anderen Optionen mit MySQL in Amazon RDS
Die meisten Amazon RDS-DB-Engines unterstützen Optionsgruppen, die Ihnen ermöglichen, zusätzliche Funktionen für Ihre DB-Instance auszuwählen. DB-Instances von RDS for MySQL unterstützen die Option memcached
, einen einfachen schlüsselbasierten Cache. Weitere Informationen über memcached
und andere Optionen finden Sie unter Optionen für MySQL-DB-Instances. Weitere Informationen über das Arbeiten mit Optionsgruppen finden Sie unter Arbeiten mit Optionsgruppen.
InnoDB-Cache-Warming für MySQL in Amazon RDS
Die InnoDB-Cache-Warnung kann zu Leistungssteigerungen Ihrer MySQL-DB-Instance führen, indem der aktuelle Zustand des Bufferpools gespeichert wird, wenn die DB-Instance heruntergefahren wird, und beim Hochfahren der DB-Instance der Bufferpool erneut aus den gespeicherten Informationen geladen wird. Dies überbrückt die ansonsten notwendige "Aufwärmphase" des Bufferpools bei normaler Verwendung von Datenbanken und lädt den Bufferpool vorab mit den Seiten für bereits bekannte Anfragen. Die Datei, die den gespeicherten Bufferpool abspeichert, speichert nur Metadaten für die Seite ab, die sich in dem Bufferpool befinden, nicht die Seiten selbst. Dadurch benötigt die Datei nur wenig Speicherplatz. Die Dateigröße beträgt nur 0,2 % der Cachegröße. So beträgt beispielsweise bei einem 64 GiB großen Cache die Größe der Cache-Initialisierungsdatei 128 MiB. Weitere Informationen zur InnoDB-Cache-Initialisierung finden Sie unter Saving and Restoring the Buffer Pool State
DB-Instances von RDS for MySQL unterstützen InnoDB-Cache-Warming. Um InnoDB-Cache-Initialisierung zu aktivieren, setzen Sie die Parameter innodb_buffer_pool_dump_at_shutdown
und innodb_buffer_pool_load_at_startup
in der Parametergruppe für Ihre DB-Instance auf 1. Die Änderung dieser Parameterwerte in einer Parametergruppe wirkt sich auf alle MySQL-DB-Instances aus, die diese Parametergruppe verwenden. Sie müssen möglicherweise eine neue Parametergruppe für diese Instances erstellen, um InnoDB-Cache-Initialisierung für bestimmte MySQL-DB-Instances zu aktivieren. Weitere Informationen zu Parametergruppen finden Sie unter Parametergruppen für Amazon RDS.
InnoDB-Cache-Initialisierung bringt vor allem einen Leistungsvorteil für DB-Instances, die den Standardspeicher verwenden. Wenn Sie PIOPS-Speicher verwenden, findet in der Regel keine signifikante Leistungssteigerung statt.
Wichtig
Wenn Ihre MySQL-DB-Instance nicht ordnungsgemäß herunterfährt, wie beispielsweise während eines Failovers, dann wird der Bufferpool nicht auf der Festplatte gespeichert. In diesem Fall lädt MySQL eine verfügbare Bufferpool-Datei, wenn die DB-Instance neu gestartet wurde. Das ist nicht schlimm, aber der wiederhergestellte Zwischenspeicher-Pool spiegelt möglicherweise nicht den aktuellsten Stand des Zwischenspeicher-Pools vor dem Neustart dar. Wir empfehlen Ihnen, Ihren Bufferpool in regelmäßigen Abschnitten in Ihrem Interesse zu verwerfen, um sicherzustellen, dass Sie immer den aktuellsten Zustand in Ihrem Bufferpool für die Initialisierung des Cache beim Starten von InnoDB haben.
Sie können ein Ereignis erstellen, das den Bufferpool in regelmäßigen Abständen automatisch verwirft. Beispielsweise erstellt das folgende Statement ein Ereignis mit dem Namen periodic_buffer_pool_dump
, das den Bufferpool stündlich verwirft.
CREATE EVENT periodic_buffer_pool_dump ON SCHEDULE EVERY 1 HOUR DO CALL mysql.rds_innodb_buffer_pool_dump_now();
Weitere Informationen zu MySQL-Ereignissen finden Sie unter Event Syntax
Entladen und Laden des Zwischenspeicher-Pools auf Abruf
Sie können den InnoDB-Cache „nach Bedarf“ speichern und laden.
Rufen Sie die gespeicherte Prozedur mysql.rds_innodb_buffer_pool_dump_now auf, um den aktuellen Zustand des Bufferpools auf der Festplatte zu verwerfen.
Rufen Sie die gespeicherte Prozedur mysql.rds_innodb_buffer_pool_load_now auf, um den Zustand des Bufferpools auf der Festplatte zu laden oder zu speichern.
Rufen Sie die gespeicherte Prozedur mysql.rds_innodb_buffer_pool_load_abort auf, um eine ladende Operation abzubrechen.
MySQL-Funktionen, die nicht von Amazon RDS unterstützt werden
Amazon RDS bietet zurzeit keine Unterstützung für die folgenden MySQL-Funktionen:
-
Authentifizierungs-Plugin
-
Fehlerprotokollierung im Systemprotokoll
-
InnoDB-Tablespace-Verschlüsselung
-
Passwortstärke-Plugin
-
Persistente Systemvariablen
-
Plugin für das Umschreiben von Abfragen
-
Semi-synchrone Replikation
-
Transportierbarer Tablespace
-
X-Plugin
Anmerkung
Globale Transaktions-IDs werden für RDS für MySQL 5.7-Versionen sowie RDS für MySQL 8.0.26 und höhere 8.0-Versionen unterstützt.
Um eine verwaltete Service-Erfahrung zu bieten, ermöglicht Amazon RDS keinen Shell-Zugriff auf DB-Instances. Eingeschränkt wird auch der Zugriff auf bestimmte Systemprozeduren und Tabellen, für die erweiterte Berechtigungen erforderlich sind. Amazon RDS unterstützt den Zugriff auf Datenbanken in einer DB-Instance mit jeder beliebigen Standard-SQL-Client-Anwendung. Amazon RDS erlaubt keinen direkten Hostzugriff auf eine DB-Instance über Telnet, Secure Shell (SSH) oder Windows Remote Desktop Connection. Wenn Sie eine DB-Instance erstellen, wird Ihnen für alle Datenbanken auf dieser Instance der Status db_owner zugewiesen, und Sie haben alle Berechtigungen auf Datenbankebene mit Ausnahme der für Backups verwendeten Berechtigungen. Amazon RDS verwaltet Backups für Sie.