Redis的持久化机制

127 阅读2分钟

Redis的数据是存在内存中的,这就导致Redis的数据很容易丢失,这时就需要使用持久化来使Redis的数据实现高可用。

RDB

1.RDB是Redis默认的持久化机制,RDB持久化文件,速度比较快,而且存储的是一个二进制文件,传输起来很方便。
2.RDB持久化时机:
save 900 1 :在900秒内,有一个Key改变了,就执行RDB持久化。
save 300 10:在300秒内,有10个key改变了,就执行RDB持久化。
save 60 10000:在60秒内,有10000个key改变了,就执行RDB持久化。
3. RDB无法保证数据的绝对安全。

下面是Redis配置RDB持久化

image.png

AOF

AOF的持久化机制默认是关闭的,Redis官方推荐同时开启RDB和AOF持久化,更安全,避免数据丢失。
1.AOF持久化的速度:对RDB较慢的,存储的是一个文本文件,到了后期文件会比较大,传输困难。
2,AOF持久化时机: appendfsync always:每执行一个写操作,立即持久化到AOF文件中,性能比较低。
appendfsync eversec:每秒执行一次持久化。
appendfsync no:会根据你的操作系统不同,环境的不同,在一定时间内执行一次持久化。
3,AOF相对RDB更加安全,推荐同时开启AOF和RDB。

如果同时开启了AOF和RDB持久化,那么在Redis宕机重启之后,需要加载一个持久化文件,优先选择AOF文件,如果先开启了RDB在开启AOF那么如果RDB执行了持久化,那么RDB文件中的内容就会被AOF覆盖掉,所以应该在最开始就同时开启AOF和RDB避免数据丢失。

下面是AOF的配置:

image.png

都看到这了,麻烦点个赞吧,听凭风引。