#!/bin/bash # config section date=`date +%Y-%m-%d` backup_dir='/mnt/mysql_backup' retention=3 # create backup directory mkdir -p $backup_dir # database backup for DB in $(mysql -e 'show databases' -s --skip-column-names|grep -v 'information_schema\|performance_schema'); do mysqldump $DB > "$backup_dir/$date.$DB.sql"; done # delete old backups find $backup_dir -type f -mtime +$retention -name '*.sql' -execdir rm -- '{}' \;