Redisredis

redis的持久化机制

2021-07-06  本文已影响0人  金煜博

1.什么是redis持久化机制

redis持久化机制就是将内存中的数据存入到磁盘当中进行保存,保证在数据丢失时能快速找回

2.redis持久化机制的方式

rdb描述

rdb方式是以快照的方式将数据持久化到磁盘以二进制文件dump.rdb进行保存

rdb示例图:

图片.png

rdb方式配置

打开redis.conf文件搜索save "" 关键字,找到系统默认配置


图片.png

save 900 1 #在900秒(15分钟)之后,如果至少有1个key发生变化,则dump内存快照
save 300 10 #在300秒(5分钟)之后,如果至少有10个key发生变化,则dump内存快照
save 60 10000 #在60秒(1分钟)之后,如果至少有10000个key发生变化,则dump内存快照

aof描述

aof是将命令通过日志的方式进行存储,aof存储分为三种同步方式
appendfsync always #每次有数据修改发生时都会写入AOF文件,能够保证数据不丢失,但是效率非常低
appendfsync everysec #每秒钟同步一次,可能会丢失1s内的数据,但是效率非常高
appendfsync no #从不同步,高效但是数据不会被持久化

aof的配置方式

打开redis.conf文件搜索appendfsync关键字,找到系统默认配置


图片.png

aof配置 always 与 everysec的区别

always只要执行命令就进行持久化,无缓冲区效率低。everysec可以配置时间段进行持久化,有缓冲区效率高。

always示例图

图片.png

everysec示例图

图片.png

总结

rdb持久化是全局同步方式(按照周期性进行数据的持久化),rdb持久化数据可能在某时间点上宕机后存在数据丢失,rdb持久化数据效率低,二进制方式恢复数据速度快
aof持久化是全局增量同步方式(对行为进行操作持久化数据),aof持久化数据也会存在某时间节点丢失数据,aof持久化数据效率高,以命令方式恢复数据速度慢

上一篇下一篇

猜你喜欢

热点阅读