环境:
Master:10.10.10.11
Slave:10.10.10.12
一、整库全备策略
Master
备份时间:4-5点
备份机制:全备
备份周期:礼拜一 礼拜二 礼拜四 礼拜六 礼拜天(礼拜三 礼拜五不备份)
备份数据会生成下载链接,本地DELL服务器会在每天20:55分将当天备份进行下载本地
Slave
备份时间:6-7点
备份机制:全备
备份周期:礼拜一到礼拜天 每天进行
备份数据会生成下载链接,本地DELL服务器会在每天20:55分将当天备份进行下载本地
二、分库分表备份策略
备份对象:master
备份时间:4-5点
备份机制:对数据库里面的每张表进行单独备份
备份周期:礼拜三和礼拜五
利用脚本在openfire01上执行备份,由于磁盘容量关系每2周删除前一周的备份
#!/bin/bash
#written by jerry@2016-05-18
user=xx
passwd=xx.xx.xx.xx
ip=xx.xx.xx.xx
login="mysql -h$ip -u$user -p$passwd"
dump="mysqldump -h$ip -u$user -p$passwd"
database=$($login -e "show databases;"|egrep -v "*chema|mysql" |sed '1d')
for database in $database
do
table=$($login -e "use $database;show tables;"|sed '1d')
for table in $table
do
[ -d /data/backup/$(date +%F)/$database ] || mkdir /data/backup/$(date +%F)/$database -p
$dump $database $table |gzip >/data/backup/$(date +%F)/$database/${database}_${table}_$(date +%F).sql.gz
done
done
测试结果:
root@10-10-136-237:/data/backup/2016-05-20/promote# ls
promote_app_2016-05-20.sql.gz promote_user__local_applist_2016-05-20.sql.gz
promote_app__info_2016-05-20.sql.gz promote_user__vcode_2016-05-20.sql.gz
promote_user__app_task_2016-05-20.sql.gz promote_user__wechat_2016-05-20.sql.gz
promote_user__info_2016-05-20.sql.gz promote_version__update_2016-05-20.sql.gz