#! /bin/bash
### file /Path/To/backup.sh
user="USER";
passwort="PASSWORT";
mail='USER[@HOST]'; #Wer bekommt die Mails?
### Für den output
directory="/tmp/";
### Schemas("Datenbanken") nicht dumpen (Trenner ist GENAU ein PIPE "|", 'Database' muss stehen bleiben):
nodump="Database|information_schema|mysql";
# showMessages=1 zeigt Nachrichten (bei cronjob vermeiden)
showMessages=1;
# Pfade zu Programmen
mysql_bin=`which mysql`;
mysqldump_bin=`which mysqldump`;
mail_bin=`which mail`;
#mysql_bin="/usr/bin/mysql";
#mysqldump_bin="/usr/bin/mysqldump";
#mail_bin="/usr/bin/mail";
### Programm: ###
err=0;
counter=0;
datetime=`date +%Y-%m-%d_%H:%M:%S`;
databases=`echo 'show schemas' | $mysql_bin --user="$user" --password="$passwort" | grep -vP $nodump`;
for database in $databases; do
outFile="${directory}/${datetime}_${database}.sql.gz";
logFile="${directory}/${datetime}.log";
if [ 1 -eq $showMessages ]; then
echo -n "Dumpe Schema: '${database}'.";
fi
$mysqldump_bin --user="$user" --password="$passwort" -B $databases | gzip -c > "${outFile}" 2>> "${logFile}" ;
if [ 0 -eq $? ]; then
counter=$(($counter+1));
if [ 1 -eq $showMessages ]; then
echo "Shema '${database}' wurde gesichert." >> "${logFile}";
echo -e "\b -> fertig.";
fi
else
if [ 1 -eq $showMessages ]; then
echo -e "\b -> FEHLER!";
fi
err=1;
fi
done
if [ 1 -eq $err ]; then
cat "${directory}/${datetime}.log" | $mail_bin -s "Fehler beim Backup" $mail;
fi
fileList=`ls -al ${datetime}*`;
echo -en "${counter} Schemas wurden gesichert.\nAngelegte Dateien:\n\n${fileList}" | $mail_bin -s "Erfolgtes Backup" $mail;
Raketenskripter: Ein paar weitere Funktionen ...
Beitrag lesen
Datenbanken sichern
Jörg
- datenbank
- php
- sicherheit
0 Raketentester0 Das willst Du auch nicht...
Raktentester0 Jörg0 Raketentester0 Das willst Du auch nicht... / Nachfrage
Jörg0 Raketentestpilot0 Jörg0 Raketentestpilot0 Rolf B0 Jörg0 Rolf B0 Warum denn einfach wenn es kpmpliziert geht ...
Raketenskripter0 Rolf B0 Ein paar weitere Funktionen ...
Raketenskripter0 Rolf B0 Jörg0 Raketenskripter0 Jörg0 Jörg0 Raketenskripter0 Raketenskripter0 Jörg0 Raktenskripter0 Jörg0 Raketenskripter0 Jörg0 Shellscripting
Jörg0 Raketenskripter0 Jörg0 Jörg0 Raketenskripter0 Jörg0 Raketenwilli0 Jörg
0 Statt Support
Raketentestpilot0 Jörg
0 Datenbanken sichern / Nochmal mit Kommentaren
Jörg