#! /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 B
0 Jörg0 Rolf B
0 Warum denn einfach wenn es kpmpliziert geht ...
Raketenskripter0 Rolf B
0 Ein paar weitere Funktionen ...
Raketenskripter0 Rolf B
0 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