Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das Erkunden der verschiedenen Methoden zum Migrieren von MySQL-Datenbanken von lokalen Umgebungen zu Azure Database for MySQL ist für die Auswahl des am besten geeigneten Ansatzes für Ihre Anforderungen unerlässlich. Dieser Artikel befasst sich mit den verschiedenen verfügbaren Migrationsmethoden und liefert eine detaillierte Analyse der Vorteile und potenziellen Herausforderungen der einzelnen Techniken. Indem Sie die Nuancen von Offlinemigration, Onlinemigration und Hybridansätzen verstehen, können Sie fundierte Entscheidungen treffen, die den Zielen und technischen Anforderungen Ihrer Organisation entsprechen. Ganz gleich, ob Sie auf minimale Ausfallzeiten, Kosteneffizienz oder einen nahtlosen Übergang abzielen, dieser Leitfaden bietet Ihnen die Möglichkeit, die beste Migrationsmethode auszuwählen und diese effektiv auszuführen.
Voraussetzungen
Lokale MySQL zu Azure Database for MySQL migrieren: Planung
Übersicht
Für eine erfolgreiche Migration müssen Tools oder Features von MySQL verwendet werden, um die Daten von der Quelle an das Ziel zu übertragen.
Schließen Sie zunächst unbedingt alle Bewertungs- und Planungsphasen ab, bevor Sie mit den nächsten Phasen beginnen. Der Migrationspfad und die Toolauswahl hängen von den Entscheidungen und gesammelten Daten ab.
In diesem Abschnitt werden die folgenden gängigen Tools erläutert:
MySQL Workbench
mysqldump
mydumper und myloader
Datenreplikation (binlog)
MySQL Workbench
MySQL Workbench verfügt über eine umfassende grafische Benutzeroberfläche, über die Entwickler und Administratoren ihre MySQL-Instanzen entwerfen, entwickeln und verwalten können.
Die aktuelle Version von MySQL Workbench bietet ausgefeilte Objektmigrationsfunktionen beim Verschieben einer Datenbank von einer Quelle an ein Ziel.
Importieren und Exportieren von Daten
MySQL Workbench bietet eine assistentenbasierte Benutzeroberfläche für den vollständigen oder teilweisen Export und Import von Tabellen und Datenbankobjekten. Ein Beispiel für die Verwendung von MySQL Workbench finden Sie unter Migrieren der MySQL-Datenbank durch Import und Export.
Sichern und Wiederherstellen (mysqldump)
mysqldump wird in der Regel im Rahmen der MySQL-Installation bereitgestellt. Hierbei handelt es sich um ein Clienthilfsprogramm, das ausgeführt werden kann, um logische Sicherungen zu erstellen, die einen Satz von SQL-Anweisungen ergeben. Diese Anweisungen können dann wiedergegeben werden, um eine Point-in-Time-Wiederherstellung der Datenbank durchzuführen. mysqldump ist nicht als schnelle oder skalierbare Lösung zum Sichern oder Migrieren großer Datenmengen beabsichtigt. Aufgrund der für die Indexaktualisierung erforderlichen Datenträger-E/A kann die Leistung beim Ausführen einer großen Anzahl von SQL-Einfügeanweisungen ungenügend sein. In Kombination mit anderen Tools, die das ursprüngliche Schema erfordern, ist mysqldump hingegen ein hervorragendes Tool zum Generieren der Datenbank- und Tabellenschemas. Die Schemas ermöglichen die Erstellung der Zielzonenumgebung des Ziels.
Das Hilfsprogramm mysqldump bietet praktische Features für die Datenmigrationsphase. Vor dem Ausführen des Hilfsprogramms müssen Leistungsaspekte ausgewertet werden. Weitere Informationen finden Sie unter Überlegungen zur Leistung.
mydumper und myloader
Umgebungen mit großen Datenbanken, die eine schnelle Migration erfordern, sollten mydumper und myloader verwenden. Diese Tools sind in C++ geschrieben und verwenden Multithreadverfahren, um die Daten so schnell wie möglich an die MySQL-Zielinstanz zu senden. mydumper und myloader machen sich Parallelismus zunutze und können die Migration um den Faktor 10 oder noch mehr beschleunigen.
Die binären Releases der Tools, die öffentlich zum Download bereitstehen, wurden für Linux kompiliert. Für die Ausführung unter Windows müssen die Open-Source-Projekte neu kompiliert werden. Das Kompilieren von Quellcode und das Erstellen von Versionen ist für die meisten Benutzenden keine triviale Aufgabe.
Datenreplikation (binlog)
Ähnlich wie bei anderen Datenbankverwaltungssystemen bietet MySQL ein Protokollreplikationsfeature namens Binlog-Replikation. Das binlogReplikationsfeature hilft bei der Datenmigration und der Erstellung von Lesereplikaten.
Nutzen Sie die binlog-Replikation in einem Onlineszenario zum Migrieren Ihrer Daten zu Azure Database for MySQL. Die Datenreplikation trägt dazu bei, die Downtime zu verringern, die für die abschließenden Zieldatenänderungen erforderlich ist.
Für die Verwendung des binlog-Replikationsfeatures müssen einige Setupanforderungen erfüllt werden:
Vom Masterserver sollte die MySQL InnoDB-Engine verwendet werden. Bei Verwendung einer anderen Speicher-Engine müssen die Tabellen zu InnoDB migriert werden.
Migrationsbenutzer müssen über Berechtigungen zum Konfigurieren der binären Protokollierung und zum Erstellen neuer Benutzer auf dem Masterserver verfügen.
Wenn für den Masterserver SSL aktiviert ist, sollten Sie sicherstellen, dass das für die Domäne bereitgestellte SSL-Zertifizierungsstellenzertifikat in die gespeicherte Prozedur „mysql.az_replication_change_master“ eingefügt wurde. Sehen Sie sich die folgenden Beispiele und den Parameter „master_ssl_ca“ an.
Stellen Sie sicher, dass die IP-Adresse des Masterservers den Firewallregeln des Azure Database for MySQL-Replikatservers hinzugefügt wurde. Aktualisieren Sie Firewallregeln über das Azure-Portal oder über die Azure-Befehlszeilenschnittstelle.
Vergewissern Sie sich, dass für den Computer, der den Masterserver hostet, sowohl ein- als auch ausgehender Datenverkehr am Port 3306 zugelassen wird.
Stellen Sie sicher, dass der Masterserver über eine zugängliche IP-Adresse (öffentlich oder privat) zwischen Quelle und Zielen verfügt.
Ausführliche Informationen zum Durchführen einer Migration mittels Replikation finden Sie unter Verknüpfen des Quell- und Replikatservers zum Starten der Datenreplikation.
Die Replikationsmethode binlog verursacht eine hohe CPU-Auslastung und erfordert zusätzlichen Speicherplatz. Migrationsbenutzer sollten bei Onlinemigrationen die Last im Quellsystem testen und ermitteln, ob sie akzeptabel ist.
Azure Database Migration Service (DMS)
Azure Database Migration Service (DMS) ist ein cloudbasiertes Azure-Tool, mit dem Administratoren die verschiedenen Einstellungen für die Migration nachverfolgen und bei Bedarf wiederverwenden können. Von DMS werden Migrationsprojekte mit Einstellungen erstellt, die auf verschiedene Quellen und Ziele verweisen. Das Tool unterstützt Offlinemigrationen. Darüber hinaus werden lokale Datenworkloads und cloudbasierte Workloads wie Amazon Relational Database Service (RDS) für MySQL unterstützt.
DMS ist zwar ein Onlinetool, aber nicht auf das binlog-Replikationsfeature von MySQL angewiesen, um seine Aufgaben zu erfüllen. Aktuell automatisiert DMS zum Teil den Offlinemigrationsprozess. DMS erfordert die Generierung und Anwendung des entsprechenden Schemas in der Azure Database for MySQL-Zielinstanz. Schemas können mithilfe des Clienthilfsprogramms mysqldump exportiert werden.
Schnellste Migration/Migration mit kürzester Downtime
Daten können auf verschiedenste Weise migriert werden. Die Wahl der Methode hängt sowohl von den Qualifikationen des Migrationsteams als auch davon ab, wie viel Downtime für die Datenbank- und Anwendungsbesitzer akzeptabel ist. Einige Tools unterstützen parallele Datenmigrationsansätze mit mehreren Threads, während andere Tools nur für die einfache Migration von Tabellendaten konzipiert sind.
Die schnellste und umfassendste Methode ist die Verwendung der binlog-Replikation (entweder direkt mit MySQL oder über DMS). Hierzu müssen jedoch Primärschlüssel hinzugefügt werden.
Entscheidungstabelle
WWI kann zwischen verschiedenen Methoden für die Migration von MySQL-Workloads wählen. Die folgende Tabelle enthält die potenziellen Methoden sowie die jeweiligen Vor- und Nachteile:
| Ziel | BESCHREIBUNG | Tool | Voraussetzungen | Vorteile | Nachteile |
|---|---|---|---|---|---|
| Schnellstmögliche Migration | Paralleler Ansatz | mydumper und myloader | Linux | Stark parallelisiert | Zieldrosselung |
| Onlinemigration | Möglichst lange Verfügbarkeit der Quelle | binlog | Keine | Nahtlos | Zusätzlicher Verarbeitungsaufwand und Speicherbedarf |
| Offlinemigration | Möglichst lange Verfügbarkeit der Quelle | Database Migration Service (DMS) | Keine | Wiederholbarer Prozess | Auf Daten beschränkt; unterstützt alle MySQL-Versionen |
| Stark angepasste Offlinemigration | Selektiver Export von Objekten | mysqldump | Keine | Hochgradig anpassbar | Manuell |
| Halbautomatisierte Offlinemigration | Export und Import über eine Benutzeroberfläche | MySQL Workbench | Herunterladen und Installieren | Halbautomatisiert | Nur gängige Switches werden unterstützt |
WWI-Szenario
WWI hat als erste Migrationsworkload die Konferenzdatenbank des Unternehmens ausgewählt. Die Workload wurde gewählt, da sie aufgrund der Lücke im jährlichen Konferenzzeitplan das geringste Risiko und die höchste akzeptable Downtime aufwies. Darüber hinaus wurde basierend auf der Bewertung des Migrationsteams beschlossen, eine Offlinemigration mithilfe von MySQL Workbench durchzuführen.
Prüfliste für Migrationsmethoden
Wahl der passenden Methode für die Ziel- und Quellumgebung
Methode kann die geschäftlichen Anforderungen erfüllen
Methode wird von der Datenworkload unterstützt (muss immer geprüft werden)