17 lines
421 B
Bash
17 lines
421 B
Bash
|
#!/bin/bash
|
||
|
|
||
|
# config section
|
||
|
date=`date +%Y-%m-%d`
|
||
|
backup_dir='/mnt/mysql_backup'
|
||
|
retention=3
|
||
|
|
||
|
# create backup
|
||
|
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 -- '{}' \;
|