GNU/Linux >> LINUX-Kenntnisse >  >> Linux

MySQL:So sichern (dumpen) und wiederherstellen Sie eine Datenbank mit mysqldump

Dieser Artikel zeigt die richtige Methode zum Sichern und Wiederherstellen der MySQL-Datenbank von der Befehlszeile in Linux mithilfe der mysqldump- und mysql-Befehle.

Wenn Sie MySQL- oder MariaDB-Datenbanken verwenden, ist es sehr wichtig, dass Sie verstehen, wie Sie Daten sichern und wiederherstellen. Darüber hinaus müssen Sie regelmäßige Backups der Datenbank erstellen, damit Sie Ihre Daten wiederherstellen können, wenn Ihre Anwendung abstürzt oder die Daten durch einen Systemausfall beschädigt werden.

MySQL und MariaDB enthalten Befehlszeilentools, mit denen Sie Datenbanken schnell und einfach sichern und wiederherstellen können. Der mysqldump Tool wird verwendet, um den Inhalt einer Datenbank in eine Textdatei zu exportieren, während das mysql Client kann verwendet werden, um Daten aus einer Textdatei in eine MySQL/MariaDB-Datenbank zu importieren.

Verwendung des MySQL-Dump-Befehls

Der mysqldump Befehlszeilendienstprogramm exportiert Datenbanken in SQL-Textdateien. Mit anderen Worten, es wird zum Erstellen des MySQL-Datenbank-Dumps verwendet.

Die Syntax für mysqldump Befehl ist unten angegeben:

mysqldump -u [username] -p [database_name] > [filename].sql

Wo:

  • Benutzername ist Ihr MySQL/MariaDB-Benutzername.
  • -p Passwort für diesen Benutzer abfragen.
  • Datenbankname ist der Name der Datenbank, die Sie sichern möchten.
  • Dateiname.sql ist der vollständige Pfad zur SQL-Dump-Datei, die die Sicherung enthalten wird.

Datenbankprozeduren, Funktionen, Ansichten und Ereignisse werden zum Zeitpunkt der Sicherung ausgegeben.

mysqldump:Eine einzelne MySQL-Datenbank sichern

In diesem Beispiel heißt die Datenbank my_wordpress . Ersetzen Sie dies durch den Namen der Datenbank, die Sie exportieren möchten. Gemäß der Syntax wird die Sicherungsdatei am aktuellen Speicherort erstellt.

mysqldump -u root -p my_wordpress > my_wordpress_backup.sql

Nachdem der Befehl ausgeführt wurde, geben Sie Ihr MySQL-Root-Passwort ein.

Dadurch wird eine MySQL-Dump-Datei mit dem Namen my_wordpress_backup.sql erstellt die alle SQL-Anweisungen zum Erstellen von Tabellen und Wiederherstellen von Daten in einer vorhandenen Datenbank enthält. Wenn während des Exportvorgangs Fehler auftreten, mysqldump wird sie auf dem Bildschirm ausgeben.

Der Befehl erzeugt keine visuelle Ausgabe, aber Sie können den Inhalt von my_wordpress_backup.sql überprüfen Verwenden Sie den Head-Befehl, um zu überprüfen, ob es sich um eine legitime MySQL-Dump-Datei handelt.

head -n 5 my_wordpress_backup.sql
-- MariaDB dump 10.19  Distrib 10.5.9-MariaDB, for Linux (x86_64)
-- Host: localhost    Database: my_wordpress
 
-- Server version    10.3.27-MariaDB-0+deb10u1

mysqldump:Mehrere MySQL-Datenbanken sichern

Um mehrere MySQL-Datenbanken mit einem Befehl zu sichern, müssen Sie die --databases verwenden gefolgt von der Liste der Datenbanken, die Sie sichern möchten. Außerdem können Sie die Ergebnisdatei an einem Ort Ihrer Wahl ablegen.

Führen Sie den folgenden Befehl aus, um eine MySQL-Dumpdatei my_backup.sql zu erstellen in /home/backups Verzeichnis zweier Datenbanken mit dem Namen my_wordpress und ftpusers .

mysqldump -u root -p --databases my_wordpress ftpusers > /home/backups/my_backup.sql 

mysqldump:Alle MySQL-Datenbanken sichern

Verwenden Sie die --all-databases Option zum Sichern aller MySQL-Datenbanken:

mysqldump -u root -p --all-databases > all_db_backup.sql

So erstellen Sie eine komprimierte MySQL-Datenbanksicherung

Wenn die Datenbankgröße sehr groß ist, empfiehlt es sich, die Ausgabe zu komprimieren. Leiten Sie dazu einfach die Ausgabe an das gzip weiter Befehl und leiten Sie ihn wie unten gezeigt in eine Datei um:

mysqldump -u root -p my_wordpress | gzip > my_wordpress_backup.sql.gz

mysql:Stellen Sie MySQL aus einer MySQL-Dump-Datei wieder her

Zum Wiederherstellen einer mit mysqldump erstellten Sicherung , müssen Sie das mysql verwenden Befehl.

mysql -u [username] -p [database_name] < [filename].sql

Wo

  • Benutzername ist Ihr MySQL/MariaDB-Benutzername.
  • -p Passwort für diesen Benutzer abfragen.
  • Datenbankname ist der Name der Datenbank, in der Sie wiederherstellen möchten.
  • Dateiname.sql ist der vollständige Pfad zur SQL-Dump-Datei, die die Sicherung enthält.

mysql:Einzelne MySQL-Datenbank wiederherstellen

Sie können alle Tabellen aus der MySQL-Dump-Datei einer bestimmten Datenbank wiederherstellen.

Die Wiederherstellung wird einfach mit dem folgenden Befehl durchgeführt, wo wir wieder einen Benutzer angeben und zur Eingabe eines Passworts aufgefordert werden und die my_wordpress_backup.sql übergeben Datei in die Datenbank my_wordpress .

mysql -u root -p my_wordpress < my_wordpress_backup.sql

Sie werden nach dem Passwort Ihres MySQL-Benutzers gefragt.

Sobald dies abgeschlossen ist, sollte die Datenbank in der laufenden Instanz von MySQL verfügbar sein. Die MySQL-Dump-Datei, aus der Sie importiert haben, ist ebenfalls noch vorhanden, sodass Sie diese an dieser Stelle entweder sicher speichern oder löschen können, wenn sie nicht mehr benötigt wird.

mysql:Alle MySQL-Datenbanken wiederherstellen

Sie können alle Datenbanken eines beliebigen MySQL-Servers aus einer MySQL-Dump-Datei auf einem anderen MySQL-Server wiederherstellen.

mysql -u root -p < all_db_backup.sql

Fazit

Jetzt können Sie Ihre Datenbankdateien regelmäßig sichern und die Daten bei Bedarf wiederherstellen, indem Sie die obigen Schritte befolgen.

Dieses Tutorial gilt auch, wenn Sie auf einen neuen Server migrieren möchten. Sichern Sie einfach die Datenbank auf Ihrem alten Server und laden Sie die MySQL-Dump-Datei auf den neuen Server hoch. Erstellen Sie eine Zieldatenbank auf dem neuen Server und führen Sie dann die hochgeladene MySQL-Dump-Datei in der neuen Datenbank aus. Außerdem sollten Sie Benutzer und Berechtigungen vom alten MySQL-Server auf dem neuen neu erstellen.

Für detailliertere Informationen finden Sie hier den Link zur offiziellen Dokumentation.

Wenn Sie Fragen oder Feedback haben, können Sie gerne einen Kommentar hinterlassen.


Linux
  1. So optimieren und reparieren Sie MySQL-Datenbanken mit phpMyAdmin

  2. So sichern und wiederherstellen Sie die Postgres-Datenbank

  3. So sichern und wiederherstellen Sie die MySQL-Datenbank über die Befehlszeile

  4. So erstellen Sie ein Backup von MySQL-Datenbanken mit mysqldump unter Ubuntu 20.04

  5. Sichern und Wiederherstellen der MySQL-Datenbank mit mysqlhotcopy

So erstellen Sie eine Sicherungskopie und stellen die MSSQL/MySQL-Datenbank in Plesk wieder her

Wie erstelle ich eine MySQL-Datenbanksicherung mit cPanel cron?

Wie kann ich eine MySQL-Datenbank mit cPanel sichern?

Wie stellt man eine Datenbanksicherung mit JetBackup 5 wieder her?

So stellen Sie eine MySQL-Datenbank aus einer .SQL-Sicherung wieder her

So sichern Sie eine MySQL-Datenbank in cPanel