MySQL Datenbanken kopieren
Um eine Datenbank zu kopieren kann man einfacher weise den Befehl „mysqldump“ auf dem lokalen oder remote Datenbankserver verwenden. Dazu loggt man sich z.B. auf dem lokalen Replikat ein. Nun gibt man den Befehl mit folgenden Parametern an. Einige davon sind Optional, wie zum Beispiel „–ignore-table“.
| mysqldump -p -q –skip-extended-insert –ignore-table=DB.TB -B DB -r DB.sql |
| Parameter | Erklärung |
|
-p |
Damit wird nach absetzten des Befehls das MySQL-Passwort abgefragt. Man kann das Passwort auch direkt daran schreiben. Zum Beispiel „-peinPass0wrd“ |
|
-q |
Dieser Parameter dient dem Schnellen Zeilenweisen schreiben der SQL-Datei. Normalerweise werden Zeilen erst immer gepuffert, so jedoch direkt geschrieben. Dies erhöht vor allen bei großen Tabellen die Geschwindigkeit. |
|
–skip-extended-insert |
Hier mit erzielt man pro Insert eine Zeile. Normalerweise werden Multiple-Insert gemacht, was zu einer Verkleinerung der Datei führt. |
|
–ignore-table |
Es können auch Tabellen vom Export ausgeschlossen werden. Diese müssen jedoch immer mit Datenbankname davor angegeben werden. Also z.B.: „–ignore-table=dbOnline.tbLog“ |
|
-B |
Hiermit wird die Datenbank angegeben welche exportiert werden soll. |
|
-r |
Mit „-r“ lässt sich eine Ausgabedatei definieren, in welche der gesamte Output geschrieben werden soll. Beispielweise „-r TestDB.sql“ |
Die Ausführung des Befehls kann je nach Größe der Datenbank von einigen Sekunden bei zu mehreren Minuten Dauern. Bei sehr großen Datenbanken auch Stunden. Ist der Vorgang jedoch abgeschlossen, findet man im aktuellen Verzeichnis den Dump. Diesen kann man nun auf den Server kopieren, wo die Datenbank läuft, in welche man den Export importieren möchte. Dies kann man per SCP oder per SFTP machen, wie einem beliebt.
Hat man nun also die Datei kopiert, wechselt man auf die Konsole des Zielservers. Dort geht man dann in das Verzeichnis, in welchem die Datei liegt. Hier nun folgendes Kommando absetzen:
| mysql -p < DB.sql |
Hiermit wird die Datenbank aus der Datei in den MySQL-Server importiert. Zu beachten sei, das Datenbanken gleichen Namens so überschrieben werden. Ist dies erfolgreich abgeschlossen kann man die SQL-Datei löschen.










