open-how2 – Entdecke. Verstehe. Nutze.
Veröffentlicht am
How2-Host

MySQL/MariaDB-Dump erstellen und wieder einspielen – Schritt für Schritt erklärt

Autor
MySQL/MariaDB-Dump erstellen und wieder einspielen – Schritt für Schritt erklärt

Ein Datenbank-Dump ist eine Sicherungskopie (Backup) einer MySQL- oder MariaDB-Datenbank in Form einer Textdatei, die alle Befehle zum Wiederherstellen der Daten enthält. Mit dieser Methode kannst du Datenbanken sichern, migrieren oder wiederherstellen.

In diesem Artikel erfährst du:

  1. Was ein DB-Dump ist
  2. Wie man einen Dump erstellt
  3. Wie man ihn wieder einspielt
  4. Nützliche Optionen für mehr Kontrolle

1. Was ist ein DB-Dump?

Ein Dump ist eine Textdatei, in der die komplette Struktur (Tabellen, Spalten, Indizes) und die gespeicherten Daten einer Datenbank als SQL-Befehle gespeichert sind. Erstellt wird er mit dem Kommandozeilen-Tool mysqldump, das zu MySQL/MariaDB gehört.

2. Datenbank-Dump erstellen

Der Grundbefehl zum Erstellen eines Dumps lautet:

mysqldump -u BENUTZERNAME -p DATENBANKNAME > backup.sql

Erklärung:

  • -u BENUTZERNAME → Benutzername mit Zugriff auf die DB
  • -p → fordert zur Passworteingabe auf
  • DATENBANKNAME → Name der zu sichernden Datenbank
  • > backup.sql → speichert den Dump in der Datei backup.sql

2.1 Dump mit Struktur und Daten

Der obige Befehl sichert Struktur + Daten (Standard).

2.2 Nur Struktur sichern

Falls du nur die Tabellenstruktur, nicht aber die Daten sichern möchtest:

mysqldump -u BENUTZERNAME -p --no-data DATENBANKNAME > struktur.sql

2.3 Nur Daten sichern

Falls du nur die Daten (ohne Struktur) sichern möchtest:

mysqldump -u BENUTZERNAME -p --no-create-info DATENBANKNAME > daten.sql

2.4 Dump mit Kompression

Um Speicherplatz zu sparen, kannst du den Dump direkt komprimieren:

mysqldump -u BENUTZERNAME -p DATENBANKNAME | gzip > backup.sql.gz

3. Datenbank-Dump wieder einspielen

Um einen Dump zurück in die Datenbank zu importieren:

mysql -u BENUTZERNAME -p DATENBANKNAME < backup.sql

Erklärung:

  • mysql → das Client-Tool von MySQL/MariaDB
  • < backup.sql → liest den Dump und führt die SQL-Befehle aus

Wichtig: Die Datenbank (DATENBANKNAME) muss vorher bereits existieren.

3.1 Komprimierte Dumps einspielen

Falls der Dump gezippt ist (backup.sql.gz):

gunzip < backup.sql.gz | mysql -u BENUTZERNAME -p DATENBANKNAME

4. Typische Fehler und Lösungen

  • "Access denied" → Prüfe Benutzername, Passwort und Rechte.
  • "Unknown database" → Erstelle die Datenbank vor dem Import:

    mysql -u BENUTZERNAME -p -e "CREATE DATABASE datenbankname;"
    

5. Zusammenfassung der wichtigsten Befehle

# Dump erstellen
mysqldump -u BENUTZERNAME -p DATENBANKNAME > backup.sql

# Dump komprimieren
mysqldump -u BENUTZERNAME -p DATENBANKNAME | gzip > backup.sql.gz

# Dump einspielen
mysql -u BENUTZERNAME -p DATENBANKNAME < backup.sql

# Komprimierten Dump einspielen
gunzip < backup.sql.gz | mysql -u BENUTZERNAME -p DATENBANKNAME

Mit mysqldump und mysql kannst du deine MySQL/MariaDB-Datenbanken zuverlässig sichern und wiederherstellen. Für regelmäßige Backups lohnt es sich, diese Befehle in Skripten zu automatisieren – und die Dumps komprimiert zu speichern.