Plesk – Regelmäßiger Dump der mySQL-Datenbanken in ein Verzeichnis

Klar mache ich Backups meines Servers. In Plesk geht das ja mit dem Backup-Manager schön, bequem und zuverlässig. Blöd ist es nur, wenn man z.B. auf eine einzelne mySQL-Datenbank zugreifen muss. Dann hat man erstmal eine riesige Backup-Datei vor sich, in der man die raussuchen darf. Ich brauchte also einen bequemeneren Weg. Lieber wäre mir, wenn einfach regelmäßig in ein Verzeichnis ein Dump aller Datenbanken gezogen werden würde. Von da kann ich das dann regelmäßig archivieren und habe somit genau das erreicht, was ich will.

Schnell und einfach erreicht man das mit diesem Skript, das man auf Wunsch auch per cron regelmäßig ausführen lassen kann – ok – nur dann macht es Sinn. Die Backup-Dateien werden in /root/backup/mysql angelegt und sind mit bzip2 komprimiert.

#!/bin/bash
for db in $(mysql -uadmin -p`cat /etc/psa/.psa.shadow` -e 'show databases' -s --skip-column-names); do
if [[ "$db" != *schema* && "$db" != *phpmyadmin* && "$db" != "event" && "$db" != "psa" && "$db" != "mysql" ]]; then
mysqldump -uadmin -p`cat /etc/psa/.psa.shadow` $db | bzip2 -c > /root/backup/mysql/$db.sql.bz2
fi
done

Schreiben Sie einen Kommentar

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