应用于整个库的备份。
#!/bin/bash
PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/sbin
# 数据库名称
databases=(myname) # 备份目录
basepath='/home/databak/'
cd $basepath
if [ ! -d "$basepath" ]; thenmkdir -p "$basepath"
fi#遍历数据库名称
for db in ${databases[*]}do# 备份数据库mysqldump -uuser -ppasswd --database $db > $basepath$db-$(date +%Y%m%d).sql# 压缩备份的数据库,并删除原文件tar czvf $db-$(date +%Y%m%d).sql.tar.gz $db-$(date +%Y%m%d).sql --remove-files# 删除7天以前的数据库备份文件 find $basepath -mtime +7 -name "*.sql.tar.gz" -exec rm -rf {} \;done