Auf dieser Seite wird beschrieben, wie Sie die folgenden Quelldatenbankinstanzen für kontinuierliche homogene MySQL-Migrationen konfigurieren:
- Cloud SQL for MySQL
- Selbst gehostetes MySQL
- Amazon RDS for MySQL
- Amazon Aurora for MySQL
- Microsoft Azure Database for MySQL
Cloud SQL for MySQL-Quelle konfigurieren
So konfigurieren Sie eine Cloud SQL for MySQL-Quellinstanz für den Migrationsprozess:
- Prüfen Sie, ob Ihre Quelldatenbank Metadaten enthält, die von Nutzern mit der
DEFINER-Klausel definiert wurden. Weitere Informationen finden Sie unter Metadaten mit einerDEFINER-Klausel überprüfen.Mit Database Migration Service für homogene MySQL-Migrationen werden keine Nutzerkonten und Anmeldedaten migriert. Quellen, die Metadaten enthalten, die von Nutzerkonten mit der
DEFINER-Klausel definiert wurden, können die Migration blockieren. - Wenn Ihre Quelldatenbank Objekte enthält, die auf Tabellen in den Systemschemata
mysql,performance_schema,information_schema,ndbinfoodersysverweisen, müssen die Replikatdatenbanken auch diese Systemschematabellen enthalten.Wenn die Replikatdatenbanken diese Tabellen nicht enthalten, schlägt der Migrationsjob möglicherweise mit dem Fehler
Unknown table in system schemafehl. -
Aktivieren und konfigurieren Sie Binärlogs in Ihrer Quelldatenbank.
In Cloud SQL for MySQL wird das binäre Logging automatisch aktiviert, wenn Sie die Wiederherstellung zu einem bestimmten Zeitpunkt (Point-in-Time Recovery, PITR) verwenden. Sie können das Logformat und den Aufbewahrungszeitraum mit den in Cloud SQL verfügbaren System-Flags konfigurieren. Gehen Sie dazu so vor:
- Aktivieren Sie die Wiederherstellung zu einem bestimmten Zeitpunkt auf Ihrer Instanz. Mit diesem Feature wird das binäre Logging automatisch aktiviert. Es ist nicht möglich, binäres Logging ohne PITR in Cloud SQL zu aktivieren. Weitere Informationen finden Sie in der Cloud SQL-Dokumentation unter Wiederherstellung zu einem bestimmten Zeitpunkt.
- Verwenden Sie Cloud SQL-Flags, um die Logging-Konfiguration anzupassen.
Weitere Informationen finden Sie in der Cloud SQL-Dokumentation unter Datenbank-Flags konfigurieren.
- Database Migration Service erfordert, dass
binlog_formataufROWgesetzt ist. Sie müssen diese Einstellung nicht anpassen, da Cloud SQL for MySQL das Flagbinlog_formatautomatisch aufROWfestlegt. - Legen Sie die
Aufbewahrungsdauer für Logs auf einen ausreichend langen Zeitraum fest, um die Datenbankmigration zu ermöglichen. In der Regel ist eine Woche ausreichend.
Verwenden Sie eines der folgenden Flags:
- MySQL 5.6–5.7:
expire_logs_days - MySQL 8.0 und höher:
expire_logs_days,binlog_expire_logs_seconds
- MySQL 5.6–5.7:
- Database Migration Service erfordert, dass
-
Erstellen Sie in Ihrer Instanz ein dediziertes Nutzerkonto für die Migration. Weitere Informationen finden Sie in der Cloud SQL-Dokumentation unter Nutzer erstellen. Sie müssen Folgendes sicherstellen:
- Sie erlauben dem dedizierten Nutzerkonto, von jedem Host (
host=%) aus eine Verbindung herzustellen. - Das Passwort für das Konto darf nicht länger als 32 Zeichen sein. Weitere Informationen zu den Einschränkungen der MySQL-Nutzerpasswortlänge finden Sie unter MySQL Bug #43439.
- Sie erlauben dem dedizierten Nutzerkonto, von jedem Host (
-
Weisen Sie dem dedizierten Migrationsnutzerkonto die erforderlichen Berechtigungen zu. Bei kontinuierlichen Migrationen hängt die vollständige Liste der erforderlichen Berechtigungen davon ab, ob Sie eigene Dump-Dateien bereitstellen oder die von Database Migration Service verwaltete Dump-Funktion verwenden:
Verwalteter Dump
Wenn Database Migration Service automatisch den vollständigen Dump Ihrer Quelldatenbank erstellen soll, weisen Sie dem Nutzerkonto die folgenden Berechtigungen zu:
REPLICATION SLAVEEXECUTEREPLICATION CLIENTSELECTSHOW VIEWTRIGGERRELOAD- Für MySQL-Quellversionen 8.0 oder höher: Achten Sie darauf, dass das Migrationskonto nicht die Berechtigung
BACKUP_ADMINhat.
Manueller Dump
Wenn Sie eigene Dumpdateien bereitstellen, die mit
mysqldumperstellt wurden, müssen Sie die für die CDC-Phase erforderlichen Berechtigungen angeben:
Selbst gehostete MySQL-Quelle konfigurieren
So konfigurieren Sie eine selbst gehostete MySQL-Quellinstanz für den Migrationsprozess:
- Achten Sie darauf, dass alle Tabellen (außer Tabellen in Systemdatenbanken) die InnoDB-Speicher-Engine verwenden. Wenn Sie eine andere Speichereinheit verwenden, müssen Sie Ihre Tabellen möglicherweise konvertieren. Weitere Informationen finden Sie unter Tabellen von MyISAM zu InnoDB konvertieren.
- Prüfen Sie, ob Ihre Quelldatenbank Metadaten enthält, die von Nutzern mit der
DEFINER-Klausel definiert wurden. Weitere Informationen finden Sie unter Metadaten mit einerDEFINER-Klausel prüfen.Mit Database Migration Service für homogene MySQL-Migrationen werden keine Nutzerkonten und Anmeldedaten migriert. Quellen, die Metadaten enthalten, die von Nutzerkonten mit der
DEFINER-Klausel definiert wurden, können Ihre Migration blockieren. - Wenn Ihre Quelldatenbank Objekte enthält, die auf Tabellen in den Systemschemas
mysql,performance_schema,information_schema,ndbinfoodersysverweisen, müssen die Replikatdatenbanken diese Systemschematabellen ebenfalls enthalten.Wenn die Replikatdatenbanken diese Tabellen nicht enthalten, schlägt der Migrationsjob möglicherweise mit dem Fehler
Unknown table in system schemafehl. - Konfigurieren Sie die Einstellung
server-idauf einen Wert von1oder höher. Weitere Informationen finden Sie unter Optionen und Variablen für Replikation und binäres Logging. -
Achten Sie darauf, dass
GTID_MODEaufONoderOFFfestgelegt ist. Andere Werte werden nicht unterstützt.Database Migration Service erfordert, dass
GTID_MODEin den folgenden Szenarien aufONfestgelegt ist:- Wenn Sie zu einer vorhandenen Zielinstanz migrieren, für die Lesereplikate aktiviert sind.
- Wenn Sie nach Abschluss der Migration kaskadierende Lesereplikate einrichten möchten.
- Wenn Sie die Dumpdateien manuell erstellen und im Migrationsjob bereitstellen möchten.
Weitere Informationen zu
GTID_MODEfinden Sie unter Systemvariable für globale Transaktions-ID. -
Aktivieren und konfigurieren Sie Binärlogs in Ihrer Quelldatenbank. Gehen Sie dazu so vor:
- Aktivieren Sie Binärlogs in der Quelldatenbank.
- Setzen Sie
binlog_formatauf'ROW'. Weitere Informationen finden Sie unter Zeilenbasiertes Binär-Logging. - Legen Sie die
Aufbewahrungsdauer für Logs auf einen ausreichend langen Zeitraum fest, um die Datenbankmigration zu ermöglichen. In der Regel ist eine Woche ausreichend.
Verwenden Sie eines der folgenden Flags:
- MySQL 5.5–5.7:
expire_logs_days - MySQL 8.0:
expire_logs_days,binlog_expire_logs_seconds
- MySQL 5.5–5.7:
-
Erstellen Sie in Ihrer Instanz ein dediziertes Nutzerkonto für die Migration. Weitere Informationen finden Sie unter Account management statements. Sie müssen Folgendes sicherstellen:
- Sie erlauben dem dedizierten Nutzerkonto, von jedem Host (
host=%) aus eine Verbindung herzustellen. - Das Passwort für das Konto darf nicht länger als 32 Zeichen sein. Weitere Informationen zu den Einschränkungen der Passwortlänge für MySQL-Nutzer finden Sie unter MySQL-Fehler Nr. 43439.
- Sie erlauben dem dedizierten Nutzerkonto, von jedem Host (
-
Weisen Sie dem dedizierten Migrationsnutzerkonto die erforderlichen Berechtigungen zu. Bei kontinuierlichen Migrationen hängt die vollständige Liste der erforderlichen Berechtigungen davon ab, ob Sie Ihre eigenen Dumpdateien bereitstellen oder die von Database Migration Service verwaltete Dumpfunktion verwenden:
Verwalteter Dump
Wenn Database Migration Service automatisch den vollständigen Dump Ihrer Quelldatenbank erstellen soll, weisen Sie dem Nutzerkonto die folgenden Berechtigungen zu:
REPLICATION SLAVEEXECUTEREPLICATION CLIENTSELECTSHOW VIEWTRIGGER- Für Quellen mit der Einstellung
GTID_MODE = ON:RELOADBeim verwalteten Dump-Ablauf benötigt Database Migration Service die Einstellung
GTID_MODE = ONnur, wenn Sie zu einer vorhandenen Zielinstanz migrieren, für die Lesereplikate aktiviert sind. - Für MySQL-Quellversionen 8.0 oder höher:Achten Sie darauf, dass das Migrationskonto nicht das
BACKUP_ADMIN-Privileg hat.
Manueller Dump
Wenn Sie eigene mit
mysqldumperstellte Dumpdateien bereitstellen, müssen Sie die für die CDC-Phase erforderlichen Berechtigungen angeben:
Amazon RDS for MySQL-Quelle konfigurieren
So konfigurieren Sie eine Amazon RDS for MySQL-Quellinstanz für den Migrationsprozess:
- Amazon RDS for MySQL verwendet standardmäßig die InnoDB-Speicher-Engine, ermöglicht aber die Verwendung anderer Speicher-Engines. Achten Sie darauf, dass alle Ihre Tabellen (mit Ausnahme von Tabellen in Systemdatenbanken) die InnoDB-Speicher-Engine verwenden. Wenn Sie eine andere Speichereinheit verwenden, müssen Sie Ihre Tabellen möglicherweise konvertieren. Weitere Informationen finden Sie unter Tabellen von MyISAM zu InnoDB konvertieren.
- Prüfen Sie, ob Ihre Quelldatenbank Metadaten enthält, die von Nutzern mit der Klausel
DEFINERdefiniert wurden. Weitere Informationen finden Sie unter Metadaten mit einerDEFINER-Klausel prüfen.Der Database Migration Service für homogene MySQL-Migrationen migriert keine Nutzerkonten und Anmeldedaten. Quellen, die Metadaten enthalten, die von Nutzerkonten mit der
DEFINER-Klausel definiert wurden, können die Migration blockieren. - Wenn Ihre Quelldatenbank Objekte enthält, die auf Tabellen in den Systemschemas
mysql,performance_schema,information_schema,ndbinfoodersysverweisen, müssen die Replikatdatenbanken diese Systemschematabellen ebenfalls enthalten.Wenn die Replikatdatenbanken diese Tabellen nicht enthalten, schlägt der Migrationsjob möglicherweise mit dem Fehler
Unknown table in system schemafehl. -
Achten Sie darauf, dass
GTID_MODEaufONoderOFFfestgelegt ist. Andere Werte werden nicht unterstützt. Amazon RDS for MySQL verwendet standardmäßigGTID_MODE = OFF.In den folgenden Szenarien muss
GTID_MODEin Database Migration Service aufONgesetzt sein:- Wenn Sie zu einer vorhandenen Zielinstanz migrieren, für die Lesereplikate aktiviert sind.
- Wenn Sie die Dump-Dateien manuell erstellen und im Migrationsjob bereitstellen möchten.
Weitere Informationen zu
GTID_MODEfinden Sie unter Systemvariable für globale Transaktions-ID. -
Prüfen und konfigurieren Sie Binärlogs in Ihrer Quelldatenbank. Gehen Sie dazu so vor:
- Achten Sie darauf, dass Ihre Instanz automatische Sicherungen verwendet. Amazon RDS generiert Binärlogs nur, wenn automatische Backups aktiviert sind. Weitere Informationen finden Sie in der Amazon RDS-Dokumentation unter Automatische Sicherungen aktivieren.
-
Legen Sie die Aufbewahrungsdauer für Logs auf einen ausreichend langen Zeitraum fest, um die Datenbankmigration zu ermöglichen. In der Regel ist eine Woche ausreichend. Weitere Informationen finden Sie in der Amazon RDS-Dokumentation unter Binärlogkonfiguration festlegen und anzeigen.
- Starten Sie den Server neu, damit die vorgenommenen Änderungen wirksam werden.
-
Erstellen Sie in Ihrer Instanz ein dediziertes Nutzerkonto für die Migration. Weitere Informationen finden Sie unter Account management statements. Sie müssen Folgendes sicherstellen:
- Sie erlauben dem dedizierten Nutzerkonto, von jedem Host (
host=%) aus eine Verbindung herzustellen. - Das Passwort für das Konto darf nicht länger als 32 Zeichen sein. Weitere Informationen zu den Einschränkungen der Passwortlänge für MySQL-Nutzer finden Sie unter MySQL-Fehler Nr. 43439.
- Sie erlauben dem dedizierten Nutzerkonto, von jedem Host (
-
Weisen Sie dem dedizierten Migrationsnutzerkonto die erforderlichen Berechtigungen zu. Bei kontinuierlichen Migrationen hängt die vollständige Liste der erforderlichen Berechtigungen davon ab, ob Sie Ihre eigenen Dumpdateien bereitstellen oder die von Database Migration Service verwaltete Dumpfunktion verwenden:
Verwalteter Dump
Wenn Sie möchten, dass Database Migration Service automatisch den vollständigen Dump Ihrer Quelldatenbank erstellt, weisen Sie dem Nutzerkonto die folgenden Berechtigungen zu:
REPLICATION SLAVEEXECUTEREPLICATION CLIENTSELECTSHOW VIEWTRIGGERLOCK TABLES- Für Quellen mit der Einstellung
GTID_MODE = ON:RELOADBeim verwalteten Dump-Ablauf benötigt der Database Migration Service die Einstellung
GTID_MODE = ONnur, wenn Sie zu einer vorhandenen Zielinstanz migrieren, für die Lesereplikate aktiviert sind. - Für MySQL-Quellversionen 8.0 oder höher: Das Migrationskonto darf nicht die Berechtigung
BACKUP_ADMINhaben.
Manueller Dump
Wenn Sie eigene mit
mysqldumperstellte Dumpdateien bereitstellen, müssen Sie die für die CDC-Phase erforderlichen Berechtigungen angeben:
Amazon Aurora for MySQL-Quelle konfigurieren
So konfigurieren Sie eine Amazon Aurora for MySQL-Quellinstanz für den Migrationsprozess:
- Prüfen Sie, ob Ihre Quelldatenbank Metadaten enthält, die von Nutzern mit der
DEFINER-Klausel definiert wurden. Weitere Informationen finden Sie unter Metadaten mit einerDEFINER-Klausel prüfen.Mit Database Migration Service für homogene MySQL-Migrationen werden keine Nutzerkonten und Anmeldedaten migriert. Quellen, die Metadaten enthalten, die von Nutzerkonten mit der
DEFINER-Klausel definiert wurden, können Ihre Migration blockieren. - Wenn Ihre Quelldatenbank Objekte enthält, die auf Tabellen in den Systemschemas
mysql,performance_schema,information_schema,ndbinfoodersysverweisen, müssen die Replikatdatenbanken diese Systemschematabellen ebenfalls enthalten.Wenn die Replikatdatenbanken diese Tabellen nicht enthalten, schlägt der Migrationsjob möglicherweise mit dem Fehler
Unknown table in system schemafehl. -
Achten Sie darauf, dass
GTID_MODEaufONoderOFFfestgelegt ist. Andere Werte werden nicht unterstützt. Amazon Aurora for MySQL verwendet standardmäßigGTID_MODE = OFF.In den folgenden Szenarien muss
GTID_MODEin Database Migration Service aufONgesetzt sein:- Wenn Sie zu einer vorhandenen Zielinstanz migrieren, für die Lesereplikate aktiviert sind.
- Wenn Sie die Dumpdateien manuell erstellen und im Migrationsjob bereitstellen möchten.
Weitere Informationen zu
GTID_MODEfinden Sie unter Systemvariable für globale Transaktions-ID. -
Aktivieren und konfigurieren Sie Binärlogs in Ihrer Quelldatenbank. Gehen Sie dazu so vor:
- Binäres Logging für Ihre MySQL-Datenbank aktivieren.
-
Legen Sie die Aufbewahrungsdauer für Logs auf einen ausreichend langen Zeitraum fest, um die Datenbankmigration zu ermöglichen. In der Regel ist eine Woche ausreichend. Weitere Informationen finden Sie unter Konfiguration des binären Logs festlegen und anzeigen.
- Starten Sie den Server neu, damit die vorgenommenen Änderungen wirksam werden.
-
Erstellen Sie in Ihrer Instanz ein dediziertes Nutzerkonto für die Migration. Weitere Informationen finden Sie unter Account Management Statements. Sie müssen Folgendes sicherstellen:
- Sie erlauben dem dedizierten Nutzerkonto, von jedem Host (
host=%) aus eine Verbindung herzustellen. - Das Passwort für das Konto darf nicht länger als 32 Zeichen sein. Weitere Informationen zu den Einschränkungen der Passwortlänge für MySQL-Nutzer finden Sie unter MySQL-Fehler Nr. 43439.
- Sie erlauben dem dedizierten Nutzerkonto, von jedem Host (
-
Weisen Sie dem dedizierten Migrationsnutzerkonto die erforderlichen Berechtigungen zu. Bei kontinuierlichen Migrationen hängt die vollständige Liste der erforderlichen Berechtigungen davon ab, ob Sie eigene Dump-Dateien bereitstellen oder die von Database Migration Service verwaltete Dump-Funktion verwenden:
Verwalteter Dump
Wenn Sie möchten, dass Database Migration Service automatisch den vollständigen Dump Ihrer Quelldatenbank erstellt, weisen Sie dem Nutzerkonto die folgenden Berechtigungen zu:
REPLICATION SLAVEEXECUTEREPLICATION CLIENTSELECTSHOW VIEWTRIGGERLOCK TABLES- Für Quellen mit der Einstellung
GTID_MODE = ON:RELOADBeim verwalteten Dump-Ablauf ist die Einstellung
GTID_MODE = ONfür Database Migration Service nur erforderlich, wenn Sie zu einer vorhandenen Zielinstanz migrieren, für die Lesereplikate aktiviert sind. - Für MySQL-Quellversionen 8.0 oder höher:Achten Sie darauf, dass das Migrationskonto nicht das
BACKUP_ADMIN-Privileg hat.
Manueller Dump
Wenn Sie eigene
mysqldump-Dumpdateien bereitstellen, müssen Sie die für die CDC-Phase erforderlichen Berechtigungen angeben:
Microsoft Azure Database for MySQL-Quelle konfigurieren
So konfigurieren Sie eine Microsoft Azure Database for MySQL-Quellinstanz für den Migrationsprozess:
- Prüfen Sie, ob Ihre Quelldatenbank Metadaten enthält, die von Nutzern mit der Klausel
DEFINERdefiniert wurden. Weitere Informationen finden Sie unter Metadaten mit einerDEFINER-Klausel prüfen.Der Database Migration Service für homogene MySQL-Migrationen migriert keine Nutzerkonten und Anmeldedaten. Quellen, die Metadaten enthalten, die von Nutzerkonten mit der
DEFINER-Klausel definiert wurden, können die Migration blockieren. - Wenn Ihre Quelldatenbank Objekte enthält, die auf Tabellen in den Systemschemas
mysql,performance_schema,information_schema,ndbinfoodersysverweisen, müssen die Replikatdatenbanken diese Systemschematabellen ebenfalls enthalten.Wenn die Replikatdatenbanken diese Tabellen nicht enthalten, schlägt Ihr Migrationsjob möglicherweise mit dem Fehler
Unknown table in system schemafehl. -
Achten Sie darauf, dass
GTID_MODEaufONoderOFFfestgelegt ist. Andere Werte werden nicht unterstützt. Microsoft Azure Database for MySQL verwendet standardmäßigGTID_MODE = OFF.Database Migration Service erfordert, dass
GTID_MODEin den folgenden Szenarien aufONfestgelegt ist:- Wenn Sie zu einer vorhandenen Zielinstanz migrieren, für die Lesereplikate aktiviert sind.
- Wenn Sie die Dumpdateien manuell erstellen und im Migrationsjob bereitstellen möchten.
Weitere Informationen zu
GTID_MODEfinden Sie unter Systemvariable für globale Transaktions-ID. -
Überprüfen und konfigurieren Sie die Einstellungen für das binäre Logging in Ihrer Quelldatenbank. Gehen Sie dazu so vor:
- Das binäre Logging ist in Microsoft Azure Database for MySQL standardmäßig aktiviert. Sie müssen es nicht aktivieren, aber prüfen Sie, ob das Feature aktiviert ist. Weitere Informationen finden Sie in der Microsoft-Dokumentation.
-
Legen Sie
binlog_expire_logs_secondsauf einen ausreichend langen Zeitraum fest, um die Datenbankmigration zu ermöglichen. In der Regel reicht eine Woche aus.Weitere Informationen finden Sie unter Serverparameter in Azure Database for MySQL konfigurieren und zum Parameter
binlog_expire_logs_secondsin der Microsoft-Dokumentation. - Starten Sie den Server neu, damit die vorgenommenen Änderungen wirksam werden.
Prüfen Sie den Wert Ihrer Einstellung
require_secure_transport.Standardmäßig ist für alle eingehenden Verbindungen zu Microsoft Azure-Datenbanken eine SSL/TLS-Verschlüsselung erforderlich. Verwenden Sie je nach
require_secure_transport-Wert eine der folgenden Verschlüsselungseinstellungen, wenn Sie das Quellverbindungsprofil erstellen:- Wenn
require_secure_transportaufongesetzt ist, wählen Sie Basic, TLS oder mTLS aus. - Wenn
require_secure_transportaufoffgesetzt ist, wählen Sie Keine aus.
- Wenn
-
Erstellen Sie in Ihrer Instanz ein dediziertes Nutzerkonto für die Migration. Weitere Informationen finden Sie unter Account management statements. Sie müssen Folgendes sicherstellen:
- Sie erlauben dem dedizierten Nutzerkonto, von jedem Host (
host=%) aus eine Verbindung herzustellen. - Das Passwort für das Konto darf nicht länger als 32 Zeichen sein. Weitere Informationen zu den Einschränkungen der Passwortlänge für MySQL-Nutzer finden Sie unter MySQL-Fehler Nr. 43439.
- Sie erlauben dem dedizierten Nutzerkonto, von jedem Host (
-
Weisen Sie dem dedizierten Migrationsnutzerkonto die erforderlichen Berechtigungen zu. Bei kontinuierlichen Migrationen hängt die vollständige Liste der erforderlichen Berechtigungen davon ab, ob Sie eigene Dump-Dateien bereitstellen oder die von Database Migration Service verwaltete Dump-Funktion verwenden:
Verwalteter Dump
Wenn Database Migration Service automatisch den vollständigen Dump Ihrer Quelldatenbank erstellen soll, weisen Sie dem Nutzerkonto die folgenden Berechtigungen zu:
REPLICATION SLAVEEXECUTEREPLICATION CLIENTSELECTSHOW VIEWTRIGGER- Für Quellen mit der Einstellung
GTID_MODE = ON:RELOADBeim verwalteten Dump-Ablauf ist die Einstellung
GTID_MODE = ONfür Database Migration Service nur erforderlich, wenn Sie zu einer vorhandenen Zielinstanz migrieren, für die Lesereplikate aktiviert sind. - Für MySQL-Quellversionen 8.0 oder höher:Achten Sie darauf, dass das Migrationskonto nicht das
BACKUP_ADMIN-Privileg hat.
Manueller Dump
Wenn Sie eigene mit
mysqldumperstellte Dumpdateien bereitstellen, müssen Sie die für die CDC-Phase erforderlichen Berechtigungen angeben:
Nächste Schritte
Eine vollständige, detaillierte Migrationsanleitung für homogene Cloud SQL for MySQL-Migrationen finden Sie unter Erste Schritte mit Cloud SQL for MySQL-Migrationen.