Redis 的持久化有哪些方式?

Redis提供了两种主要的持久化方式:

1. RDB 持久化(默认)

Redis会周期性的把内存中的数据备份到磁盘文件的snapshot上。

配置文件修改:

save 900 1    # 15分钟备份一次
save 300 10   # 5分钟备份一次,有10次及以上变化
save 60 10000 # 1分钟备份一次,有10000次及以上变化

2. AOF 持久化

Redis会把写操作记录到日志文件。重启的时候把这些日志重新执行一遍。

配置文件修改:

appendonly yes  
appendfilename "appendonly.aof"   
appendfsync always  

两种方式的优缺点:

RDB方式:

+ 备份速度快
+ 文件压缩比高

AOF方式:

+ 数据完整性更高
+ 耗磁盘空间多

因此一般会同时使用两种方式:

+ RDB + AOF

初始加载快速的RDB文件后,使用AOF来持久化日后的数据修改。