Zum Inhalt springen
EuroVPSEuroVPS

So sichern Sie Ihre MySQL-Datenbanken

EuroVPS FAQ

3 Min. Lesezeit

Shell: FAQ page chrome, see faq/INDEX-AND-CHROME.md.

Body

Einführung

Eine physische Kopie der MySQL-Backend-Verzeichnisse für den späteren Gebrauch funktioniert nicht immer, und die Wiederherstellung ist schwierig und mit komplizierten Abläufen verbunden. Wir sehen uns zwei Methoden an, mit denen Sie Ihre Datenbanken sauber sichern und wiederherstellen.

#1. mysqldump

MySQL und MariaDB bringen ein Werkzeug namens mysqldump mit, mit dem Sie die gehosteten Datenbanken einfach sichern. Das erzeugte SQL-Backup ist die vollständige Folge von SQL-Anweisungen, die die Quelldatenbank abbilden. Bei der Wiederherstellung werden daraus die Datenbankobjekte in derselben oder einer anderen MySQL/MariaDB-Instanz angelegt. Das Backup ist portabel, Sie können die Datei mit jedem Texteditor öffnen und die SQL-Anweisungen bei Bedarf anpassen.

mysqldump für alle Datenbanken

Mit der folgenden Syntax sichert mysqldump alle Datenbanken des MySQL-Servers. Dafür brauchen Sie die Zugangsdaten des MySQL-Administrators. Nach dem Aufruf wird das Administratorpasswort abgefragt, und das Backup wird an den Ort geschrieben, den Sie als Ausgabedatei angeben.

mysqldump -u root -p --all-databases > all-DB-dump-$( date '+%Y-%m-%d_%H-%M-%S' ).sql

mysqldump für eine einzelne Datenbank.

Sie können die Zugangsdaten des Administrators oder den Datenbankbenutzer der jeweiligen Datenbank verwenden. Stellen Sie sicher, dass der Datenbankbenutzer die Rechte GRANT SELECT, SHOW VIEW, RELOAD, REPLICATION CLIENT, EVENT, TRIGGER auf die Datenbank hat. Mit den folgenden Befehlen aus einer MySQL-Shell legen Sie den Benutzer an und geben ihm die für Backups nötigen Rechte.

CREATE USER 'bkpuser'@'localhost' IDENTIFIED BY '<password>';
GRANT SELECT, SHOW VIEW, RELOAD, REPLICATION CLIENT, EVENT, TRIGGER ON db_name.* TO 'bkpuser'@'localhost';

Ersetzen Sie bkpuser durch den gewünschten Benutzernamen für den Backup-Benutzer, password durch das tatsächliche Passwort des Benutzers und db_name durch den Namen der Datenbank. Danach sichern Sie die Datenbank db_name mit dem Benutzer bkpuser und seinen Zugangsdaten über die folgende Syntax.

mysqldump -u [username] -p[password] -h [host] [databaseName] > [backup-name].sql

Oder

mysqldump -u bkpuser -p<password> db_name > db_name.sql

mysqldump für eine einzelne Tabelle

Mit der folgenden Syntax sichern Sie eine einzelne Tabelle aus der Datenbank.

mysqldump -u [username] -p[password] -h [host] [databaseName] [tableName] > [backup-name].sql

Oder

mysqldump -u bkpuser -p<password> db_name table_name > table_name.sql

Wiederherstellung des erzeugten Backups.

Der mysql-Client spielt die .sql-Datei in eine Datenbank zurück. Mit dem folgenden Befehl aus der MySQL-Shell legen Sie eine leere Datenbank für die Wiederherstellung an.

mysql> create database db_name;
Query OK, 1 row affected (0.08 sec)

Mit dem mysql-Client und der folgenden Syntax starten Sie die Wiederherstellung aus der .sql-Datei.

mysql -u [username] -p [databaseName] < backupFile.sql

mysqldump kann auch eine Datenbank von einem entfernten Server sichern, mit der folgenden Syntax.

mysqldump --host hostaddress -P portnumber -u username -ppassword dbname > dbname.sql

#2 Mit phpMyAdmin

phpMyAdmin ist in cPanel und Plesk enthalten und kann eine Datenbank aus dem Browser heraus exportieren und importieren.

Melden Sie sich im phpMyAdmin Ihrer Datenbank an, klicken Sie auf den Reiter Export, wählen Sie das Format der Backup-Datei, wählen Sie SQL aus der Auswahlliste und klicken Sie auf «Go». Das Backup wird erzeugt und in derselben Browsersitzung heruntergeladen.

Wählen Sie den Reiter «Import», klicken Sie auf «Choose File», suchen Sie die Backup-Datei auf Ihrem Rechner und klicken Sie auf «Go», um ein Backup über phpMyAdmin wiederherzustellen.

Aus den FAQ von EuroVPS.

Mehr in «Anleitungen»

Ihr nächster Infrastrukturpartner

Haben Sie noch
eine Frage?

Sagen Sie uns, was Sie erreichen möchten. Ein Ingenieur liest es und antwortet.

+357 222 32280
Ein EuroVPS-Ingenieur trägt einen Server-Knoten durch das Rechenzentrum
Ein Gespräch mit den Menschen, die sich um Ihre Infrastruktur kümmern werden.

Beginnen wir mit Ihrer Umgebung.

Ein wenig Kontext hilft uns, das richtige Gespräch zu beginnen.

Wir verwenden Ihre Angaben, um Ihre Anfrage zu beantworten. Datenschutzerklärung