#!/bin/sh
#
#  mysql_backups -- dump each database into separate file
#

TARGET=/var/lib/mysql/backups/nightly
DATE=$(date +%Y%m%d)

# SKIP is a regular expression matching databases that are /not/ backed up.
SKIP='test'

if [ ${HOME} != '/root' ]; then
    echo Whoa there\! $0 must be run with root\'s login environment.
    echo Perhaps you need to \"su -\"?
    exit 1
fi

echo Dumping mysql databases to ${TARGET}: $(date)

# First line of output is column header, "Databases"
for DB in $(mysql -e 'show databases' | tail +2 | egrep -v "${SKIP}"); do
    echo \* ${DB}
    mysqldump ${DB} | gzip > ${TARGET}/${DB}.${DATE}.sql.gz
done

echo Completed: $(date)
