Backup MySQL Database Daily and Keep for 7 days

Here is a script I quickly wrote to mysqldump a single database and keep 7 days worth of backups.

# Script –
# Created by Jordansphere – 20/Jun/13

NOW=$(date +”%d-%m-%Y”)

#BACKUP DATABASE in date format (eg “MyDatabase-20-6-2013.sql”)
/usr/bin/mysqldump -u $USERNAME -p$PASSWORD –databases MyDatabase > /home/mysqlbackups/MyDatabase.$NOW.sql

# REMOVE BACKUPS MORE THAN 1 WEEK OLD – This removes all files in the directory older than a week, so be careful!!
find /home/mysqlbackups/* -mtime +7 -exec rm {} \;


Im sure there are other ways to skin this but I only wrote it in under 5 minutes.

Now all we have to do is put the script in the crontab:

0 2 * * * root /data/bin/