Da der Raspberry PI ab und an die schlechte Angewohnheit hat, z.B. bei einem Stromausfall das Filessystem auf der SD-Karte zu schreddern weil z.B. noch Schreiboperationen liefen, musste eine Möglichkeit der automatisierten Sicherung der MySQL Datenbanken her.
Datenbank sichern
Hierzu habe ich mysqldump genutzt. Gesichert werden alle Datenbanken (–all-databases) inkl. deren Struktur und Daten des entsprechenden Benutzers (–user). Das Ergebnis des Dumps wird in eine Datei geschrieben und mit gzip komprimiert. Bei mir landet die Datei auf einem NAS welches unter /media gemountet ist.
Im Dateiname wird mittels `date +%Y%m%d` immer das aktuelle Datum eingemischt damit die Sicherung vom Vortag nicht überschrieben wird.
Das Shell-Script sieht dann folgendermaßen aus:
#!/bin/bash sudo mysqldump --user=<benutzer> --password=<passwort> --all-databases | gzip > /media/nas/db_sicherung_`date +%Y%m%d`.sql.gz exit 0
Das Script rufe ich dann täglich mittels Cron auf. In meinem Fall immer um 21:15 Uhr. Ausgaben des Scripts (auch Fehler!) schreibe ich nach /dev/null.
Also crontab -e aufrufen und folgende Zeile hinzufügen:
15 21 * * * sudo /usr/local/bin/sicherung.sh &> /dev/null