快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

Redis备份方式总结-创新互联

本篇内容主要讲解“Redis备份方式总结”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Redis备份方式总结”吧!

为常德等地区用户提供了全套网页设计制作服务,及常德网站建设行业解决方案。主营业务为成都网站建设、成都网站设计、常德网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

一、redis持久化的两种方式:

RDB: 对内存中数据库状态进行快照

AOF: 把每条写命令都写入文件

RDB方式:将redis在内存中的数据库状态保存到磁盘里面,RDB文件是一个经过压缩的二进制文件,通过该文件可以还原生成RDB文件的数据状态。

RDB的生成方式:

指向命令手动生成

通过配置自动生成

1.指向命令手动生成

有两个redis命令可以生成RDB文件,一个是SAVE,另一个是BGSAVE,SAVE命令会阻塞redis服务器进程,直到RDB文件创建完毕为止,在服务器阻塞期间,服务器不能处理任何的进程,BGSAVE会派出一个子进程,然后由子进程负责创建RDB。文件,服务器进程(父进程)继续处理命令请求,创建RDB文件结束之前,客户端发送的 BGSAVE 和 SAVE 命令会被服务器拒绝。

2.通过配置自动生成?

可以设置服务器配置的save选项,让服务器每隔一段时间自动执行一次BGSAVE命令,可以通过save选项设置多个保存条件,但只要其中任意一个条件被满足就会执行BGSAGE命令。

例如:

save 900 1

save 300 10

save 60  10000

那么只要满足以下三个条件中的其中一个,BGSAVE命令就会被执行

服务器在 900 秒之内,对数据库进行了 1 次修改

服务器在 300 秒之内,对数据库进行了 10 次修改

服务器在 60 秒之内,对数据库进行了 10000 次修改

AOF方式:是通过保存redis服务器所执行的写命令来记录数据库状态的AOF文件刷新方式,有三种:

1.appendfsync always -- 每提交一个修改命令都调用fsync到AOF文件,非常慢,但是很安全;

2.appendfsync everysec -- 每秒都调用fsyns刷新到AOF文件,很快但可能丢失一秒内的数据;

3.appendfsync no -- 依靠OS进行刷新,redis不主动刷新AOF,这样最快但是安全性差;

默认并且推荐每秒刷新,这样在速度和安全上都做到了兼顾

二、数据恢复

1.ROB方式

ROB文件的载入工作是在服务器启动时自动执行的,没有专门用于载入ROB文件命令,只要redis服务器再启动时检测到

ROB文件存在,它就会自动载入ROB的文件,在服务器载入的期间,会一直处于阻塞状态,直到载入工作完成为止

2.AOF方式

服务器在启动时,通过载入和执行AOF文件中保存的命令来还原服务器关闭之前的数据,具体过程:

载入AOF文件

创建模拟客户端

从AOF文件中读取一条命令

使用模拟客户端执行命令

循环读取并执行命令,直到全部完成

如果同时启动了AOF和ROB方式,AOF优先,启动时只加载AOF文件恢复数据

三、RDB和AOF对比总结

1、RDB

是在某个时间点将数据写入一个临时文件,持久化结束后,用这个临时文件替换上次持久化的文件,达到数据恢复。 这里说的这个执行数据写入到临时文件的时间点是可以通过配置来自己确定的,通过配置redis在n秒内如果超过m个key被修改这执行一次RDB操作。这个操作就类似于在这个时间点来保存一次Redis的所有数据,一次快照数据。所有这个持久化方法也通常叫做snapshots。

2、AOF

Append-only file,将“操作 + 数据”以格式化指令的方式追加到操作日志文件的尾部,在append操作返回后(已经写入到文件或者即将写入),才进行实际的数据变更,“日志文件”保存了历史所有的操作过程;当server需要数据恢复时,可以直接replay此日志文件,即可还原所有的操作过程。AOF相对可靠,它和mysql中bin.log、apache.log、zookeeper中txn-log简直异曲同工。AOF文件内容是字符串,非常容易阅读和解析。

3、两种备份方案的选择:

对于RDB持久化,

一方面是bgsave在进行fork操作时redis主进程会阻塞,

另一方面,子进程向硬盘写数据也会带来IO压力,但数据的完整性和一致性受备份条件影响可能较差;而AOF持久化由于持续的写入IO压力更大,但数据的一致性和完整性较好。

到此,相信大家对“Redis备份方式总结”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


文章名称:Redis备份方式总结-创新互联
本文链接:http://6mz.cn/article/ppsdi.html

其他资讯