Datenbank Backup · 2 min read · Jan 26, 2026

MySQL-Backups mit AutoMySQLBackup erstellen

MySQL-Backups mit AutoMySQLBackup erstellen

Version 1.0
Autor: Falko Timme

AutoMySQLBackup ist ein Shell-Skript, mit dem Sie tägliche, wöchentliche und monatliche Backups Ihrer MySQL-Datenbanken mit mysqldump erstellen können. Es kann mehrere Datenbanken sichern, die Backups komprimieren, entfernte Datenbanken sichern und die Protokolle per E-Mail versenden.

Ich gebe keine Garantie, dass dies bei Ihnen funktioniert!

1 Vorbemerkung

AutoMySQLBackup verwendet mysqldump, um SQL-Dumps Ihrer Datenbanken zu erstellen. Bitte beachten Sie, dass mysqldump Ihre Datenbanken während der Erstellung des Backups sperrt, und dies kann je nach Größe Ihrer Datenbank von weniger als einer Sekunde bis zu einigen Minuten dauern. Wenn Sie eine stark frequentierte Website mit einer großen Datenbank betreiben, ist AutoMySQLBackup nicht für Sie geeignet!

Dieses Skript hilft nicht im Falle eines Festplattenschadens. Sie sollten Ihre Backups regelmäßig offline kopieren, um den besten Schutz zu gewährleisten.

2 Verwendung von AutoMySQLBackup

Sie können AutoMySQLBackup wie folgt herunterladen:

cd /usr/local/bin
wget http://mesh.dl.sourceforge.net/sourceforge/automysqlbackup/automysqlbackup.sh.2.5

Öffnen Sie dann automysqlbackup.sh.2.5 und sehen Sie sich die Konfigurationsoptionen an. Diese sind alle gut erklärt. Sie sollten mindestens die folgenden Einstellungen konfigurieren:

vi automysqlbackup.sh.2.5

| [...] USERNAME=root [...] PASSWORD=yourrootsqlpassword [...] DBHOST=localhost [...] # Liste der DBNAMES für tägliches/wöchentliches Backup z.B. "DB1 DB2 DB3" DBNAMES="db_ispconfig web1 web2 web3" [...] # Speicherort des Backup-Verzeichnisses z.B. /backups BACKUPDIR="/backups" [...] # E-Mail-Adresse, an die die Mail gesendet werden soll? ([email protected]) MAILADDR="[email protected]" [...] |

DBNAMES kann eine oder mehrere Datenbanken enthalten, die durch Leerzeichen getrennt sind.

Wenn BACKUPDIR nicht existiert, wird automysqlbackup.sh.2.5 es automatisch erstellen.

Stellen Sie sicher, dass Sie das richtige Passwort und den Datenbank-Host eingeben. Wenn Sie lokale Datenbanken sichern möchten, verwenden Sie localhost; wenn Sie entfernte Datenbanken sichern möchten, verwenden Sie den entfernten Hostnamen (bitte beachten Sie, dass der entfernte Datenbankserver so konfiguriert sein muss, dass er entfernte Verbindungen zulässt!).

Jetzt müssen wir das Skript ausführbar machen:

chmod 755 automysqlbackup.sh.2.5

Jetzt können Sie automysqlbackup.sh.2.5 so ausführen, wenn Sie sich im Verzeichnis /usr/local/bin befinden:

./automysqlbackup.sh.2.5 

… oder so aus jedem anderen Verzeichnis:

automysqlbackup.sh.2.5

Dies ist eine Beispielausgabe:

AutoMySQLBackup VER 2.5
http://sourceforge.net/projects/automysqlbackup/

Backup-Startzeit Freitag, 17. Okt 16:00:51 CEST 2008

Tägliches Backup der Datenbank ( db_ispconfig )
Wechseln des letzten Wochen-Backups…

Backup-Informationen für /backups/daily/db_ispconfig/db_ispconfig_2008-10-17_16h00m.Friday.sql
komprimiert unkomprimiert Verhältnis unkomprimierter Name
37231 382465 90.3% /backups/daily/db_ispconfig/db_ispconfig_2008-10-17_16h00m.Friday.sql

———————————————————————-
Backup-Ende Freitag, 17. Okt 16:00:52 CEST 2008

Gesamter Speicherplatz, der für die Backup-Speicherung verwendet wird..
Größe - Standort
68K /backups

Wenn Sie AutoMySQLBackup wertvoll finden, bitte spenden Sie unter
http://sourceforge.net/project/project_donations.php?group_id=101066

server1:~#

Schauen Sie sich das Verzeichnis /backups an…

ls -l /backups

… und Sie sollten drei Unterverzeichnisse finden: daily, weekly und monthly:

server1:~# ls -l /backups/
total 12
drwxr-xr-x 3 root root 4096 2008-10-17 16:00 daily
drwxr-xr-x 2 root root 4096 2008-10-17 16:00 monthly
drwxr-xr-x 3 root root 4096 2008-10-17 16:00 weekly
server1:~#

Diese Verzeichnisse enthalten Unterverzeichnisse, die nach den Datenbanken benannt sind, die Sie sichern möchten. Wenn Sie beispielsweise die Datenbank db_ispconfig gewählt haben, gibt es ein Verzeichnis /backups/daily/db_ispconfig, das den Datenbank-Dump enthält:

cd /backups/daily/db_ispconfig
ls -l

server1:/backups/daily/db_ispconfig# ls -l
total 40
-rw-r–r– 1 root root 37231 2008-10-17 16:00 db_ispconfig_2008-10-17_16h00m.Friday.sql.gz
server1:/backups/daily/db_ispconfig#

Die .gz-Erweiterung bedeutet, dass es komprimiert ist. Um eine Datenbank wiederherzustellen, müssen Sie zuerst den Dump dekomprimieren:

gunzip db_ispconfig_2008-10-17_16h00m.Friday.sql.gz

… (dies gibt Ihnen den unkomprimierten Dump mit dem Namen db_ispconfig_2008-10-17_16h00m.Friday.sql) und dann stellen Sie ihn wie beschrieben unter https://www.howtoforge.com/faq/6_4_en.html wieder her.

Natürlich möchten Sie automysqlbackup.sh.2.5 nicht ständig manuell ausführen. Daher können wir einen täglichen Cron-Job dafür erstellen:

cd /etc/cron.daily/
ln -s /usr/local/bin/automysqlbackup.sh.2.5 automysqlbackup

3 Links

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.