3. 数据备份方案及数据恢复容灾演练
以上对redis的持久化的原理和操作进行了讲解,但是在企业中,持久化到底是怎么去用得呢?
企业级的数据备份和各种灾难下的数据恢复,是怎么做得呢?本节将对redis企业级数据备份方案,以及各种踩坑的数据恢复进行容灾演示。
3.1. 持久化的配置策略
在企业中,RDB的生成策略,用默认的也可以:
save 60 10000 :1分钟内有10000个key值发生变化,就生成RDB,这个根据应用和业务的数据量来决定。
如果你希望RDB丢失数据少,如RDB最多丢1分钟的数据,那么尽量就是每隔1分钟都生成一个快照。在低峰期,数据量很少,时间上可以设置久一点。
AOF一定要打开,fsync,everysec
auto-aof-rewrite-percentage 100: 就是当前AOF大小膨胀到超过上次100%,上次的两倍
auto-aof-rewrite-min-size 64mb: 根据你的数据量来定,16mb,32mb
3.2. 数据备份方案
RDB非常适合做冷备,每次生成之后,就不会再有修改了。
数据备份方案
1、写crontab定时调度脚本去做数据备份;
2、每小时都copy一份rdb的备份,到一个目录中去,仅仅保留最近48小时的备份;
3、每天都保留一份当日的rdb的备份,到一个目录中去,仅仅保留最近1个月的备份;
4、每次copy备份的时候,都把太旧的备份给删了;
5、每天晚上将当前服务器上所有的数据备份,发送一份到远程的云服务上去。
使用crontab定时调度脚本做数据备份。
crontab 格式:
* * * * * command
分 时 日 月 周 命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
Crontab 选项:
crontab –e : 修改 crontab 文件. 如果文件不存在会自动创建。
crontab –l : 显示 crontab 文件。
crontab -r : 删除 crontab 文件。
crontab -ir : 删除 crontab 文