Die Datenbankmigration ist ein Problem, auf das wir häufig stoßen. Bei kleinen Datenmengen stellt die Migration grundsätzlich kein Problem dar. In der Produktionsumgebung sind Migrationsarbeiten in den folgenden Situationen erforderlich:
Es gibt drei gängige Methoden zur MySQL-Migration: 1. Exportieren Sie die Datenbank direkt, kopieren Sie die Datei auf den neuen Server und importieren Sie sie auf dem neuen Server. 2. Verwenden Sie Migrationstools von Drittanbietern. 3. Kopieren Sie die Datendateien und die Strukturdateien der Bibliothekstabelle direkt auf den neuen Server und hängen Sie sie mit derselben Konfiguration in den MySQL-Dienst ein. Die Vorteile der ersten Lösung sind: Sie erstellt die Datendateien neu, reduziert den von den Datendateien belegten Speicherplatz, bietet die beste Kompatibilität, hat selten Probleme beim Exportieren und Importieren und ist flexibel in den Anforderungen. Nachteile: Der herkömmliche Export und Import dauert lange. Vorteile der zweiten Lösung: Nach Abschluss der Einstellungen erfolgt die Übertragung unbeaufsichtigt und automatisch. Nachteile: Nicht flexibel genug, kompliziert einzurichten, lange Übertragungszeit und es ist schwierig, die Übertragung vom abnormalen Standort aus fortzusetzen, nachdem eine Anomalie aufgetreten ist. Die Vorteile der dritten Lösung: weniger Zeitaufwand, Dateien können an Haltepunkten übertragen werden und weniger Bedienschritte. Nachteile: Die MySQL-Version und -Konfiguration müssen auf dem neuen und dem alten Server identisch sein, was zu unbekannten Problemen führen kann. Wenn die Datenbankmigration auf geschäftliche Engpässe oder eine Projektumwandlung zurückzuführen ist, die Änderungen an der Datentabellenstruktur (z. B. Partitionen und Tabellen) erfordert, können wir nur die erste Methode verwenden. Verwenden Sie MySQLs SELECT INTO OUTFILE und LOAD DATA INFILE, um Daten schnell zu exportieren und zu importieren Die Anweisung Wenn Sie Nachfolgend sehen Sie ein Beispiel für ein Projekt, bei dem MySQL mit einem Gesamtdatenvolumen von 12 G von Windows nach Linux migriert wird. Datenexport auf Windows-Plattform: Tables.txt ist eine Datei, in der die Namen von Datentabellen gespeichert sind. Durch das Lesen der Namen von Datentabellen aus der Datei werden alle Tabellen in einer Schleife exportiert. Wenn Untertabellen in den Prozess involviert sind, können die exportierten SQL-Anweisungen und Batchcodes entsprechend den Untertabellenregeln geändert werden, was sehr flexibel ist. @echo aus & setlocal aktivierte verzögerte Erweiterung für /f %%i in (tables.txt) mache ( setze table=%%i echo "Tabelle ausgeben -- !Tabelle! --" mysql -uroot -p12345678 codetc_old -e "SELECT * INTO OUTFILE 'F:/MySQL/Uploads/!table!.txt' FELDER ABGESCHLOSSEN DURCH ',' AUS !table!" ) Pause Daten auf der Linux-Plattform importieren: #!/bin/bash während Zeile gelesen wird Tun mysql -uroot -p12345678 codetc_new -e "Daten aus Datei '/var/lib/mysql-files/$line.txt' in Tabelle $line laden, Felder mit Beendigung durch ','" fertig < Tabellen.txt Bevor Sie Daten importieren, müssen Sie auf der neuen Maschine eine Tabellenstruktur erstellen. Der Export von 12 GB Daten dauert etwa 3 Minuten und der Import etwa 4 Minuten (die Ausführungszeit variiert je nach Konfiguration der Maschine und ist kein Referenzwert). Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an Das könnte Sie auch interessieren:
|
<<: Implementierung der CentOS8.0-Netzwerkkonfiguration
>>: So erfassen Sie Ausnahmen in React
In diesem Artikel werden hauptsächlich die Unters...
Bei Verwendung eines Cloud-Servers stellen wir ma...
Dieser Artikel beschreibt anhand von Beispielen d...
In diesem Artikel wird hauptsächlich das Vue-Proj...
Inhaltsverzeichnis 1. Einleitung 2. MVCC (Multi-V...
MySQL-Gruppensortierung, um die obersten N zu fin...
Dig-Einführung: Dig ist ein Tool, das DNS einschl...
Ich habe kürzlich einige CSS-bezogene Wissenspunk...
CSS 3-Animationsbeispiel - Dynamischer Effekt des...
Kommen wir heute gleich zur Sache und sprechen üb...
Das sogenannte Favicon, die Abkürzung für Favorite...
<br />Welche Grundsätze sollten beachtet wer...
In diesem Artikelbeispiel wird der spezifische Co...
Wenn Sie benutzerdefinierte Zabbix-Skripte zum Sa...
<style type="text/css"> Code kopie...