17 lines
431 B
Bash
17 lines
431 B
Bash
#!/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 -- '{}' \; |