Centos7中实现脚本使用mysqldump实现分库分表备份

该脚本用于Linux环境,使用bash命令和MySQL工具进行数据库备份。它首先创建一个备份目录,然后读取数据库列表,对每个数据库执行mysqldump进行全量备份,并对每个数据库的每个表进行增量备份,所有备份文件均进行gzip压缩。如果备份过程成功,脚本会显示成功消息并清理临时文件;否则,提示失败。
摘要由CSDN通过智能技术生成

脚本

#!/bash/bin
user=root      #用户名
password=123456   #密码
back_path=/backup/db
databases_file=/backup/databases.list
[ -f $databases_file ] || touch /backup/databases.list
if [[ ! -s ${databases_file} ]]
then
while read line
do
  [ -d ${back_path}/$line ] || mkdir -p ${back_path}/$line
 mysqldump -u${user} -p${password} -B $line 2>/dev/null | gzip 1> ${back_path}/${line}/${line}.sql.gz
  mysql -u$user -p$password -N -e "show tables from $line" 1> /backup/tbname 2>/dev/null
 while read tb
 do
  mysqldump -u${user} -p${password} $line $tb 2>/dev/null | gzip 1>${back_path}/$line/${line}_${tb}.sql.gz
 done < /backup/tbname
done < $databases_file
if [ $? -eq 0 ]
then
  echo "备份成功!!备份目录是$back_path"
else
  echo "备份失败!!!请检查"
fi
rm -rf /backup/tbname
true > $databases_file

 执行脚本

备份成功!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值