Website-Suche

Sichern und Wiederherstellen von MySQL/MariaDB-Datenbanken unter Linux


Dieser Artikel zeigt Ihnen einige praktische Beispiele, wie Sie verschiedene Sicherungsvorgänge von MySQL/MariaDB-Datenbanken mit dem Befehl mysqldump durchführen können, und wir werden auch sehen, wie Sie sie mit Hilfe von mysql und mysqlimport unter Linux wiederherstellen können.

mysqldump ist ein Befehlszeilen-Client-Programm, das verwendet wird, um lokale oder entfernte MySQL-Datenbanken oder Sammlungen von Datenbanken zur Sicherung in eine einzige flache Datei zu speichern.

Wir gehen davon aus, dass Sie MySQL bereits auf dem Linux-System mit Administratorrechten installiert haben und wir glauben, dass Sie bereits über ein geringes Maß an MySQL-Kenntnissen verfügen.

Wenn Sie MySQL nicht installiert haben oder keine Erfahrung mit MySQL haben, lesen Sie unsere Artikel unten.

  • So installieren Sie MySQL auf RHEL-basierten Distributionen
  • So installieren Sie MySQL auf Rocky Linux und AlmaLinux
  • So installieren Sie MySQL unter Ubuntu Linux
  • So installieren Sie MySQL unter Debian
  • 20 MySQL (mysqladmin) Befehle für die Datenbankverwaltung unter Linux
  • 12 Best Practices für MySQL/MariaDB-Sicherheit für Linux

Wie sichere ich eine MySQL-Datenbank unter Linux?

Um eine Sicherung von MySQL-Datenbanken oder Datenbanken zu erstellen, muss die Datenbank auf dem Datenbankserver vorhanden sein und Sie müssen Zugriff auf sie haben. Das Format des Befehls wäre.

# mysqldump -u [username] –p[password] [database_name] > [dump_file.sql]

Die Parameter dieses Befehls lauten wie folgt.

  • [username] : Ein gültiger MySQL-Benutzername.
  • [password] : Ein gültiges MySQL-Passwort für den Benutzer.
  • [database_name] : Ein gültiger Datenbankname, den Sie sichern möchten.
  • [dump_file.sql]: Der Name der Backup-Dump-Datei, die Sie generieren möchten.

Wie sichert man eine einzelne MySQL-Datenbank?

Um eine Sicherung einer einzelnen Datenbank zu erstellen, verwenden Sie den Befehl wie folgt. Der Befehl speichert die Datenbankstruktur [rsyslog] mit Daten in einer einzelnen Speicherabbilddatei mit dem Namen rsyslog.sql.

# mysqldump -u root -ptecmint rsyslog > rsyslog.sql

Wie sichert man mehrere MySQL-Datenbanken?

Wenn Sie eine Sicherung mehrerer Datenbanken erstellen möchten, führen Sie den folgenden Befehl aus. Mit dem folgenden Beispielbefehl wird eine Sicherung der Struktur und der Daten von Datenbanken [rsyslog, syslog] in einer einzigen Datei mit dem Namen rsyslog_syslog.sql erstellt.

# mysqldump -u root -ptecmint --databases rsyslog syslog > rsyslog_syslog.sql

Wie sichert man alle MySQL-Datenbanken?

Wenn Sie eine Sicherung aller Datenbanken erstellen möchten, verwenden Sie den folgenden Befehl mit der Option –all-database. Der folgende Befehl übernimmt die Sicherung aller Datenbanken mit ihrer Struktur und ihren Daten in eine Datei mit dem Namen all-databases.sql.

# mysqldump -u root -ptecmint --all-databases > all-databases.sql

Wie kann ich nur die MySQL-Datenbankstruktur sichern?

Wenn Sie nur die Sicherung der Datenbankstruktur ohne Daten wünschen, dann verwenden Sie die Option –no-data im Befehl. Der folgende Befehl exportiert die Datenbank [rsyslog] Structure in eine Datei rsyslog_structure.sql.

# mysqldump -u root -ptecmint -–no-data rsyslog > rsyslog_structure.sql

Wie sichert man nur MySQL-Datenbankdaten?

Um Datenbankdaten ohne Struktur zu sichern, verwenden Sie die Option –no-create-info mit dem Befehl. Dieser Befehl übernimmt die Daten der Datenbank [rsyslog] in eine Datei rsyslog_data.sql.

# mysqldump -u root -ptecmint --no-create-db --no-create-info rsyslog > rsyslog_data.sql

Wie sichere ich eine einzelne Datenbanktabelle?

Mit dem folgenden Befehl können Sie eine Sicherung einer einzelnen Tabelle oder bestimmter Tabellen Ihrer Datenbank erstellen. Der folgende Befehl erstellt beispielsweise nur eine Sicherung der wp_posts Tabelle aus der Datenbank wordpress.

# mysqldump -u root -ptecmint wordpress wp_posts > wordpress_posts.sql

Wie sichere ich mehrere Datenbanktabellen?

Wenn Sie eine Sicherung mehrerer oder bestimmter Tabellen aus der Datenbank erstellen möchten, trennen Sie die einzelnen Tabellen durch Leerzeichen.

# mysqldump -u root -ptecmint wordpress wp_posts wp_comments > wordpress_posts_comments.sql

So sichern Sie die Remote-MySQL-Datenbank

Der folgende Befehl führt die Sicherung der Datenbank [gallery] des Remote-Servers [172.16.25.126] auf einen lokalen Server durch.

# mysqldump -h 172.16.25.126 -u root -ptecmint gallery > gallery.sql

Wie stelle ich die MySQL-Datenbank wieder her?

Im obigen Tutorial haben wir gesehen, wie man nur Datenbanken, Tabellen, Strukturen und Daten sichert, jetzt werden wir sehen, wie man sie mit dem folgenden Format wiederherstellt.

# # mysql -u [username] –p[password] [database_name] < [dump_file.sql]

So stellen Sie eine einzelne MySQL-Datenbank wieder her

Um eine Datenbank wiederherzustellen, müssen Sie eine leere Datenbank auf dem Zielcomputer erstellen und die Datenbank mit dem Befehl msyql wiederherstellen. Mit dem folgenden Befehl wird z. B. die rsyslog.sql Datei in der rsyslog-Datenbank wiederhergestellt.

# mysql -u root -ptecmint rsyslog < rsyslog.sql

Wenn Sie eine Datenbank wiederherstellen möchten, die bereits auf dem Zielcomputer vorhanden ist, müssen Sie den Befehl mysqlimport verwenden.

# mysqlimport -u root -ptecmint rsyslog < rsyslog.sql

Auf die gleiche Weise können Sie auch Datenbanktabellen, -strukturen und -daten wiederherstellen. Wenn Ihnen dieser Artikel gefallen hat, dann teilen Sie ihn mit Ihren Freunden.

Verwandte Artikel: