MacBook-Bildschirm mit SQL- und PHP-Code einer Datenbankabfrage, Symbolbild für MySQL auf der Konsole

MySQL Datenbank über Konsole exportieren und importieren

Nicht immer geht es über eine hübsche Klicki-Bunti Oberflächen wie PhpMyAdmin oder Adminer, dass wir MySQL-Datenbanken (oder MariaDB-Datenbanken, die auf MySQL als Fork aufsetzen) exportieren und importieren können. Für kleine Datenbanken unter 20 MB groß mag dies vielleicht nocht gehen, aber bei bspw. 3GB wird es hier schon schwierig. Auch wenn Tools wie MySQLDumper schon sehr in die Jahre gekommen sind (die Meisten werden nicht mehr aktiv weiterentwickelt), aber dennoch funktionieren, gibt es eine einfachere Variante, sofern Zugriff auf die Konsole via SSH oder direkt besteht. 

Eine bestimmte MySQL Datenbank exportieren

mysqldump -u benutzername -p datenbankname > dump.sql

Die Struktur einer MySQL Datenbank mit exportieren

mysqldump -u benutzername -p --no-data datenbankname > dump.sql

Die Daten aus einer MySQL Datenbank exportieren

mysqldump -u benutzername -p --no-create-info datenbankname > dump.sql

Mehrere MySQL Datenbanken exportieren

mysqldump -u benutzername -p --databases datenbankname1 [datenbankname2 ...] > dump.sql

Alle MySQL Datenbanken exportieren

mysqldump -u benutzername -p --all-databases > dump.sql

MySQL Datenbanken importieren

mysql -u benutzername -p datenbankname < dump.sql

SQL-Dumps komprimieren

Da die SQL-Dumps sehr groß werden können und nur reiner Text sind, können sie sehr einfach auf einen Bruchteil mit einem Komprimierungsprogram wie gzip mit „gzip dump.sql“ reduziert werden. Bei einem SQL-Dump von 2 GB, sind nach Komprimierung mit gzip nur noch knapp 175 MB übrig geblieben. Mit dem Programm gunzip können die Archive dann wieder entpacht werden: „gunzip dump.sql.gz“.

Ist der SQL-Dump erfolgreich exportiert und komprimiert kann er beispielsweise mittels SCP, SFTP oder vielen weiteren Möglichkeiten, wie auch dem Ablegen in einem Public-Verzeichnis, auf den Zielserver / Datenbank gelangen. Den Dump sollte man nur nicht im Public-Verzeichnis vergessen, sonst wird es peinlich.

Dieser Beitrag ist auch verfügbar auf: English

Veröffentlicht von

Christopher

Technik begeistert mich, und darüber schreibe ich auf Bitpage.de schon seit 2012. Hauptberuflich bin ich Entwickler, nebenbei teste ich Software und schraube an alter Hardware. Hier findet Ihr Anleitungen, Erfahrungsberichte und meine Meinung, mal auf Nerd-Level, mal als schneller Praxistipp.

4 Kommentare zu „MySQL Datenbank über Konsole exportieren und importieren“

  1. Ich packe die Dumps direkt beim Schreiben in gzip-Archive und entpacke dann auch live aus diesen um die Dumps zurück zu spielen. Spart jede Menge Platz auf der Festplatte :)

    mysqldump -u user -p database | gzip > database.sql.gz
    gunzip < database.sql.gz | mysql -u user -p database

  2. Guten Tag,
    Sehr guter Artikel, übersichtlich und schlicht.
    Dankeschön für die Anleitung

    Mit freundlichen Grüßen,
    Erwin

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert