Backup database and rsync to offsite server
This is the current bash script for exporting the databases from each web server and sending them to the backup server.
#!/bin/bash # db.sh # Backup of database to offsite server # Jason Bickley, Web Manager EWEA # 9 JULY 2013 #==== RECEIVE VARIABLES FROM COMMAND LINE ====# FREQ=$1 SERVER=$2 #==== SCRIPT OPTIONS ====# USER=backup PASS="mwbubCEsxCU6XVsW" DIR=/root/backup/mysql/ FILE=localhost.sql.gz DEST=backup.ewea.org DATE=$(date +"%Y%m%d %T") LOG=/var/log/backupDB_log #==== EXCUTION OF COMMANDS ====# # Change operating directory cd $DIR #==== Export database ====# mysqldump -u$USER -p$PASS --all-databases --lock-all-tables | gzip > $SERVER.$FREQ.$FILE chmod 600 $SERVER.$FREQ.$FILE #==== rsync the export to offsite server ====# rsync -aze "ssh -p 10022 -i /root/.ssh/"$SERVER"_prv_key" $SERVER.$FREQ.$FILE root@$DEST:/backups/$FREQ/$SERVER/db/ #==== delete the exported file ====# rm -f $SERVER.$FREQ.$FILE #==== Confirm success in log file ====# echo $DATE Backup successful! $DEST:/backups/$FREQ/$SERVER/db/$SERVER.$FREQ.$FILE >> $LOG
To use it, you just have to run: db.sh {freq} {servername} {option}
cd /root/Scripts/backup/ ./db.sh daily main



