Add basic sql backup script
This script is currently only for racknerd host, and needs to be altered for others, as well as having the password removed.master
parent
89f7000a6d
commit
941727878a
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# TODO: Use a password file instead of passing password to script
|
||||||
|
|
||||||
|
SERVER=racknerd
|
||||||
|
BACKUPDIR=/home/nathan/backups/$SERVER
|
||||||
|
DATE=$(date +%Y%m%d)
|
||||||
|
DBS="$(mysql -u admin -ppassword -Bse 'show databases' | egrep -v '^Database$|hold$' | grep -v 'performance_schema\|information_schema\|mysql')"
|
||||||
|
REMOTE=nathan@alphavps.aney.co.uk
|
||||||
|
REMOTEBACKUP=~/backups/sql/$SERVER
|
||||||
|
|
||||||
|
for DB in ${DBS[@]};
|
||||||
|
do
|
||||||
|
mkdir -p $BACKUPDIR/$DB
|
||||||
|
# Take the backup
|
||||||
|
mysqldump -u admin -ppassword $DB > $BACKUPDIR/$DB/${DB}_${DATE}
|
||||||
|
# tarball the backup
|
||||||
|
# Change the directory, to prevent backup to all path
|
||||||
|
cd $BACKUPDIR
|
||||||
|
tar -zcf $DB/${DB}_${DATE}.gz $DB/${DB}_${DATE}
|
||||||
|
# remove untarballed
|
||||||
|
rm $BACKUPDIR/$DB/${DB}_${DATE}
|
||||||
|
|
||||||
|
ssh nathan@alphavps.aney.co.uk mkdir -p $REMOTEBACKUP/$DB
|
||||||
|
scp $BACKUPDIR/$DB/${DB}_${DATE}.gz nathan@alphavps.aney.co.uk:$REMOTEBACKUP/$DB
|
||||||
|
done
|
||||||
|
|
||||||
Loading…
Reference in New Issue