数据库备份策略

时间:2021-03-19 14:01:02

环境:

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