Linux系统使用的Mysql分库分表备份脚本
#!/bin/sh
user=root #⽤户名
pass=root #密码
backfile=/root/mysql/backup #备份路径
[ ! -d$backfile ] && mkdir-p$backfile#判断是否有备份路径
cmd="mysql -u$user -p$pass" #登录数据库
dump="mysqldump -u$user -p$pass "#mysqldump备份参数
dblist=`$cmd -e "show databases;" 2>/dev/null |sed 1d|egrep -v
"_schema|mysql"`#获取库名列表
echo"需要备份的数据列表:"
echo$dblist
echo"开始备份:"
for db_name in$dblist#for循环备份库列表
do
printf '正在备份数据库:%s'${db_name}
$dump$db_name2>/dev/null |gzip >${backfile}/${db_name}_$(date
+%m%d).sql.gz #库名+时间备份打包⾄指定路径下
printf ',备份完成\n'
done
echo"全部备份完成!!!"