vim backup_db
#!/bin/bash
mysql_host="192.168.1.256"
mysql_user="sige"
mysql_passwd="Sige123"
bak=/data/backup/
#备份的数据库数组
db_arr=$(echo "show databases;" | mysql -u$mysql_user -p$mysql_passwd -h$mysql_host)
#不需要备份的单例数据库
array=(test information_schema performance_schema)
#进入到备份目录
cd $bak
#循环备份
for dbname in ${db_arr}
do
if [ $dbname != $array ]; then
sqlfile=$dbname_`date +%Y-%m-%d`.sql
mysqldump -u$mysql_user -p$mysql_passwd -h$mysql_host --default-character-set=utf8 $dbname >$sqlfile
fi
done
#tar打包所有的sql文件
tar -zcPpf $sqlfile.tar.gz $sqlfile
rm -f $sqlfile
find . -type f -mtime +5 | grep -v backup_db | xargs rm -rf
find . -type f -size 0c | xargs rm -rf
本文出自 “Linux运维之道” 博客,谢绝转载!
原文:http://sigelinux.blog.51cto.com/8875874/1730170