Backup von MySQL-Datenbanken

Bisher war ich ein großer Fan des Backup-Scripts AutoMySQLBackup. Es ist einfach zu installieren und macht die Datensicherung von MySQL-Datenbanken sehr einfach. Dummerweise bietet es aber keine Möglichkeit, die Retention-Time anzupassen. Mark Grennan hat zu diesem Zweck das Script angepasst. Allerdings waren einige Änderung notwendig, damit es sauber funktioniert:

  • Auslagerung der Konfigurations-Parameter auf Debian-Standard
  • Anpassung des Konfigurations-Pfad zu /etc/default/automysqlbackup
  • Änderung der mysqldump Optionen, denn master-data=2 wird nicht benötigt und erfordert Binlogging
  • Einfügen einer Überprüfung, ob USERNAME und PASSWORD gesetzt sind, da ich ~/.my.cnf hierfür benutze

Wer diese Änderung nutzen will, darf gerne den Patch und die Default-Config automysqlbackup verwenden. Zur Vervollständigung als Kurzanleitung:

Patchen und installieren:

wget https://netzdeponie.de/wp-content/uploads/2014/05/automysqlbackup.sh_.txt
mv automysqlbackup.sh_.txt automysqlbackup.sh
wget https://netzdeponie.de/wp-content/uploads/2014/05/patch.txt
patch -i patch.txt
chmod +x automysqlbackup.sh
mv automysqlbackup.sh /usr/sbin/automysqlbackup.sh

Installieren der Default-Config:

wget https://netzdeponie.de/wp-content/uploads/2014/05/automysqlbackup.txt
mv automysqlbackup.txt /etc/default/automysqlbackup

Die Konfiguration setzt vorraus, das der Besitzer des Cronjobs die MySQL-Zugangsdaten in ~/.my.cnf gespeichert hat:

[client]
user=root
password=DEINPASSWORD

Und abschließend wird der Cronjob automysqlbackup in /etc/cron.daily/ eingerichtet:

root@host:/etc/cron.daily# cat automysqlbackup
#!/bin/sh
test -x /usr/sbin/automysqlbackup || exit 0
/usr/sbin/automysqlbackup

Et voilà! Viel Spaß.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert