#!/bin/sh
#执行程序路径
DUMP=/usr/local/mysql/bin/mysqldump
#文件备份路径
OUT_DIR=/data/backup/
#数据库名称
DB_NAME=test
#数据库账号
DB_USER=root
#数据库密码
DB_PASS=123456
#最多备份多少天
DAYS=3
#切换到数据库备份目录
cd $OUT_DIR
#设定时间变量
DATE=`date +%Y-%m-%d-%H`
#设定导出文件名变量
OUT_SQL="$DB_NAME-$DATE.sql"
#设定压缩文件名变量
TAR_SQL="db-$DB_NAME-$DATE.tar.gz"
#执行导出程序
$DUMP --default-character-set=utf8 --opt -u$DB_USER -p$DB_PASS $DB_NAME > $OUT_SQL
#执行导出文件后文件压缩
tar -czf $TAR_SQL ./$OUT_SQL
#删除导出文件
rm -f $OUT_SQL
#删除备份之外时间的文件
find ./ -name "db*" -type f -mtime +$DAYS -exec rm {} \;
#结束脚本
exit 0;
备注: 执行脚本有提示错误,可以不理会,那个是mysqldump 脚本不能带密码变量