redis数据恢复-redis数据恢复时间

数据恢复 42

文章信息一览:

Redis持久化

1、RDB持久化和AOF持久化的区别:存储数据RDB持久化保存键空间的所有键值对(包括过期字典中的数据),并以二进制形式保存,符合rdb文件规范,根据不同数据类型会有不同处理。AOF持久化保存redis服务器所执行的所有写命令来记录数据库状态,在写入之前命令存储在aof_buf缓冲区

2、Redis实现数据持久化的两种实现方式:RDB:指定的时间间隔内保存数据快照AOF:先把命令追加到操作日志的尾部,保存所有的历史操作RDB实现Redis数据持久化(默认方式)编辑 redis.conf注:使用whereis redis命令查看redis安装在哪个位置,然后进入redis安装目录的etc目录下,编辑redis.conf。

redis数据恢复-redis数据恢复时间
(图片来源网络,侵删)

3、Redis 提供了多种不同级别的持久化方式:RDB 持久化可以在指定的时间间隔内生成数据集的时间点快照(point-in-time snapshot)。AOF 持久化记录服务器执行的所有写操作命令,并在服务器启动时,通过重新执行这些命令来还原数据集。

Redis中的AOF工作流程

1、rewrite的工作流程 (1)redis fork一个子进程。 (2)子进程基于当前内存中的数据,构建日志,开始往一个新的临时的AOF文件中写入日志。 (3)redis主进程,接收到client新的写操作指令后,在内存中写入日志,同时新的日志指令也会在旧的AOF日志文件中写入。

2、AOF的工作流程操作:命令写入(append)、文件同步(sync)、文件重写(rewrite)、重启加载(load)。如下图所示:流程如下:1)所有的写入命令会追加到aof_buf(缓冲区)中。2)AOF缓冲区根据对应的策略向硬盘做同步操作。3)随着AOF文件越来越大,需要定期对AOF文件进行重写,达到压缩的目的。

redis数据恢复-redis数据恢复时间
(图片来源网络,侵删)

3、AOF工作原理如同COW(Copy-on-write),在并发读写场景下,通过增量记录确保一致性。写命令首先被添加到缓冲区,然后定期地同步到磁盘。为了优化空间,Redis***用重写策略,将重复的键值操作替换为单一记录,从而压缩文件体积。重启时,Redis会依据AOF文件的指令,逐步重建内存中的数据。

4、把redis配置文件启用AOF,比如appendonly设置为yes;建议把appendfsync设置为everysec,这样一秒同步一次,性能不会像always那样差,而且最多丢一秒钟的数据。其他配置请参考其他资料。注意:只是修改配置文件,先不要停止或者重启redis服务。

5、RDB(Redis DataBase,快照方式) 是将某一个时刻的内存数据,以二进制的方式写入磁盘。 AOF(Append Only File,文件追加方式) 是指将所有的操作命令,以文本的形式追加到文件中。

6、AOF的实现流程有三个步骤 步骤一 把命令追加到AOF缓冲区,步骤二 将缓冲区的内容写入程序缓冲区 步骤三 将程序缓冲区的内容写入文件 当AOF持久化功能处于开启状态时,服务器每执行完一个命令就会将命令以协议格式追加写入redisServer结构体的aof_buf缓冲区。

关于redis数据恢复和redis数据恢复时间的介绍到此就结束了,感谢你花时间阅读本站内容,更多关于redis数据恢复时间、redis数据恢复的信息别忘了在本站搜索。

扫码二维码