1. RDB快照:
Redis DataBase,指用数据集快照的方式实现半持久化模式,记录redis数据库的所有键值对,在一定时间间隔内将数据写入一个临时文件,持续化结束后,用这个文件替换上次持久化的文件,可恢复数据。二进制文件,默认开启。
优点:
- 只有一个文件dump.rdb,恢复操作简单,容灾性好
- 性能较高,使用单独子进程进行写操作,主进程继续处理命令
- 大数据集比AOF的恢复率高
缺点:数据安全性低,rdb是每隔一段时间继续持久化,若期间redis发生故障,可能会发生数据丢失。
2. AOF日志:
Append-only file,指所有的命令行记录以redis命令请求协议的格式完全持久化存储(操作 + 数据),保存为aof文件。默认关闭。启动修改配置文件redis.config,appendonly yes
即可。
优点:
- 数据安全,最多丢失1s数据,aof持久化可以配置appendfasync属性为always,记录每个命令操作到aof文件中;通过append模式写文件,即使中途服务器宕机,也可以通过redis-check-aof工具解决数据一致性问题
- AOF机制的rewrite模式,AOF文件被rewrite之前可以进行处理,如删除文件中的flushall命令。
缺点:AOF持久化文件比RDB大,恢复速度慢。