备份脚本: db_back.sh
# 备份路径(自己先创建)
backupdir=/var/lib/mysql/db_back
dbname=$1
password=$2
# 进入mysqldump 目录
cd /usr/bin/
# 获取当前时间
echo "获取当前时间:"
name=$dbname"-"$(date -d today +"%Y-%m-%d-%H-%M-%S")
echo $name
echo "===开始备份==="
# 执行备份
mysqldump --opt -uroot --password=$password $dbname > $backupdir/$name.sql
echo "===备份成功==="
# 删除过期备份
echo "===准备删除30天之前的备份文件"
find $backupdir -name "$dbname*.sql" -type f -mtime +30 -exec rm {} \; > /dev/null 2>&1
# ps :如果 单位是分钟 , 把上面的 -mtime 改为 -mmin 就好
echo "===删除成功==="
调用:
sh db_back.sh 数据库名称 密码