Les réflexions de l'ingénieur

MySQL backup script

#!/bin/sh

#SETTINGS
MYSQLUSER=<insert mysql user here>
MYSQLPASSWORD=<insert mysql password here>
dbnames=( database1 database2 database3 database4 )
BACKUPDIR=/var/dbbackups

#GET FULL PATHS TO NEEDED APPS
MYSQLDUMP_APP=`which mysqldump`
GIT_APP=`which git`

#DUMP THE DATABASES
for name in ${dbnames[@]}
do
$MYSQLDUMP_APP --skip-opt -u$MYSQLUSER -p$MYSQLPASSWORD --quote-names --complete-insert --create-options --quick --lock-tables=false --skip-add-locks $name -r $BACKUPDIR/$name.sql

cd $BACKUPDIR
$GIT_APP add $name.sql
$GIT_APP commit -m "mysql database backup $name `date`"
echo "--- mysql database backup $name `date` completed"

done
$GIT_APP push
echo "--- mysql database backups pushed to remote repository"

Leave a message