mysql数据库资源脚步_Shell脚步之MySql分库分表备份

前言

数据备份的重要性已经不用过多强调了。这篇文章我们就以MySQL数据进行演示如何通过Shell脚步进行MySQL数据库的分库分表备份。

要求

Linux命令要求比较熟悉,Shell脚步语法规则也要熟悉,MySQL的数据库备份命令要比较熟悉。下面也会提到,如果有不懂得希望可以自行查阅资料学习。

命令窗口查询MySQL数据库列表

6ad3ab0e2d79b1a4f68a00747bfffd97.png

上面我们就通过Linux命令窗口查询到了MySQL的数据库列表

去除MySQL自带数据库获取目标业务数据库列表,查看表列表

5ba747e179f748c1b9fd2ad73e46f3e9.png

备注:通过过滤掉MySQL自带数据库,那么就剩下ckmike数据库,我们就对这个书库进行备份。

6d67c22b4175f81a735c5970e9ec0701.png

ckmike数据库中有两张表,我们对表列表同样可过滤掉我们不要的第一行,如下:

67dfa9ff7c91ab578bee76cac2b4696d.png

编写脚步进行分库分表备份

#!/bash/sh

USER=root

PASSWORD=jp349869

LOGIN="mysql -u$USER -p$PASSWORD"

DUMP="mysqldump -u$USER -p$PASSWORD"

DATABASE=$($LOGIN -e "show databases;"|egrep -v "*schema|mysql|sys"|sed '1d')

for database in $DATABASE

do

TABLE=$($LOGIN -e "use $database;show tables"|sed '1d')

for table in $TABLE

do

#如果目录不存在则进行创建

[ -d /server/back/$database ] || mkdir /server/back/$database -p

$DUMP $database $table |gzip >/server/backup/${database}/${table}_$(date +%F).sql.gz

done

done

保存之后进行shell脚步执行。

79d262580da15f3ba82b785b315d3d94.png

到这里Shell脚步MySQL数据库分库分表备份就完成了。为了方便也可以写入Linux定时任务。在这里不讲如何写入定时任务,自行查阅。

其他数据库同理,知识命令和借助的备份工具不同而已,可自行扩展。打完收工!!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值