Logisches mySQL Backup
- by Patrice
Logisches mySQL Backup
Ein logisches Backup hat gegenüber der einfachen Sicherung der Dateien unter “/var/lib/mysql/” den Vorteil, dass sich dieses grundsätzlich auf andere SQL-Datenbanken (z.B. PostgreSQL, Oracle, SQL Server) zurück sichern lässt. Ein logisches Backup besteht außerdem aus einer Textdatei, welche – wenn nötig – mit einem konventionellen Editor einsehbar ist.
Ein logisches Backup erfolgt unter MySQL mit Hilfe des Programms
mysqldump
, welches standardmäßig mit installiert wird.
Dazu sollte man zuerst den MySql-Server stoppen um die Datenintegrität zu gewährleisten.
sudo /etc/init.d/mysql stop
Der Befehl
mysqldump --opt -u root -p --all-databases > sicherung.sql
sichert mit den Rechten des (SQL-Benutzers) “root” alle Datenbanken in die Datei sicherung.sql. Die Sicherung kann natürlich auch mit einem anderen Benutzer durchgeführt werden, sofern dieser die notwendigen Rechte in den zu sichernden Datenbanken hat. Sehr wichtig ist die angegebene Option
--opt
, da diese alle notwendigen Sperren für die Dauer der Sicherung setzt.
Möchte man den Dump zurücksichern, so geschieht dies mit dem Befehl
mysql -u root -p < sicherung.sql
Jetzt den MySql-Server wieder starten.
sudo /etc/init.d/mysql start
Abschließend kann man optional die Datenbank auf Fehler überprüfen.
mysqlcheck -A -r -u root -p rootPassword
Die Benutzung von mysqlcheck benötigt einen laufenden MySql-Server!
