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 [code]mysqldump[/code]
, welches standardmäßig mit installiert wird.
Dazu sollte man zuerst den MySql-Server stoppen um die Datenintegrität zu gewährleisten.
[code]
sudo /etc/init.d/mysql stop
[/code]
Der Befehl
[code]
mysqldump --opt -u root -p --all-databases > sicherung.sql
[/code]
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 [code]--opt[/code]
, 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
[code]
mysql -u root -p < sicherung.sql
[/code]
Jetzt den MySql-Server wieder starten.
[code]
sudo /etc/init.d/mysql start
[/code]
Abschließend kann man optional die Datenbank auf Fehler überprüfen.
[code]
mysqlcheck -A -r -u root -p rootPassword
[/code]
Die Benutzung von mysqlcheck benötigt einen laufenden MySql-Server!