MySQL Backup 1.0.0
21. Dezember 2008
Es gibt kein Problem, das man nicht mit Perl loesen koennte. Ich hab mir heute ein Script geschrieben, das von allen MySQL-Datenbanken einen Dump (Export) macht und die ausgegebene Datei dann anschliessend in RAR oder TAR/GZip packt.
Benoetigte Perl-Module
Installation
- Mit User root einloggen (optional)
- Herunterladen des Scripts
- Entpacken mit unzip mkbak.mysql-1.0.0.zip
- Rechte aendern, damit niemand anders das Script ausfuehren und lesen kann: chmod 700 mkbak.mysql.pl
- Configuration: Nach dem Kommantar # CONFIG START gibt es ein paar Einstellungen, die man aendern sollte. Die Variable $DBUSER sollte man auf root lassen, damit alle Datenbanken exportiert werden. Die Variable $DBPASS muss das MySQL-Root-Passwort enthalten. Und die 3. Variable, die man aendern sollte, ist $BAKDIR. Dort hinein werden dann die Backup-Files gespeichert. Als Standard ist jetzt ~/mysql_backup eingestellt. Diesen Ordner sollte man auch auf chmod 700 setzen, damit niemand anders auf die MySQL-Files zugreiffen kann. Wenn man RAR installiert hat, kann man noch optional die Variable $RAR setzten. Sollte sich das Tar-Programm nicht unter /bin/tar befinden, so kann man es auch aendern. Genau so auch mit GZip ($GZIP).
- Wenn man sich bei Schritt 1 nicht mit root eingeloggt hat, muss man die Datei /var/log/mkbak.mysql.log haendisch mit dem User root erstellen und die Rechte richtig setzen. Oder man aendert den Logfile-Pfad auf einen Eigenen. Z.B. auf ./mkbak.mysql.log
- Jetzt kann man den ersten Test machen: ./mkbak.mysql.pl
- Danach schaut man sich das Logfile (/var/log/mkbak.mysql.log) an, ob irgendwelche Fehler aufgetretten sind.
- Optional kann man folgende Zeile zu den Cronjobs hinzufuegen, damit jeden Tag um 00:00 Uhr das Script ausgefuehrt wird: 0 0 * * * /path/to/the/mkbak.mysql.pl