Home > MySQL >

MySQLDUMP sinnvoll erstellen und speichern per Cronjob

Um einmal täglich einen MySQLDUMP aller Datenbanken in ein File oder Einzelfiles pro Datenbank zu erstellen habe ich dieses Script geschrieben.

Es erstellt zunächst den oder die MySQLDUMPS aller Datenbanken und packt diese letztendlich in das Zielverzeichnis im GZIP Format.
Dateien eines gewissen Alters werden automatisch gelöscht (Default: 8 Tage).

Der Aufruf des Scripts kann entweder direkt per Cron oder mit dem nachfolgenden „Caller“ erfolgen, der die Ausgabe zusätzlich per E-Mail verschickt.

#!/bin/bash
 
# Backup E-Mail NotificationPATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"DATUM=$(date "+%d.%m.%y")SERVERNAME="MEIN-SERVER"
 
LOCALLOG="/var/log/db_backup.log"
 
/pfad/zum/mysqldump.sh >/tmp/1cf54aad7e5ded97201726b3eb1f25e0 2>&1
 
cat /tmp/1cf54aad7e5ded97201726b3eb1f25e0 | mail -s "$SERVERNAME DB $DATUM" meine-email@adresse.tld
cat /tmp/1cf54aad7e5ded97201726b3eb1f25e0 >> $LOCALLOG
 
exit 0

Das oben angesprochene mysqldump.sh Script findet ihr
hier zum Download

Danach fehlt nurnoch der Aufruf des Callers per Cronjob und die Anpassung des BASH Scripts, was ich beides euch überlasse ;)

Getestet ist es unter Gentoo und Debian.

KategorienMySQL
  1. Bisher keine Kommentare
  1. Bisher keine Trackbacks