redis的持久化机制分为两种,一个是RDB机制(Radis DateBase)【是redis默认的持久化操作】,另一个是AOF机制(Append Only File)。
RDB就是以一种快照的形式把数据保存到磁盘上,记录的是那一刻的。是在指定时间内,进行指定次数的操作。会在指定目录下会生成一个dump.rdb文件,Redis 重启的时候,通过加载dump.rdb文件来恢复数据。
AOF主要是是为了解决实时性问题,对每条写入命令作为日志,以append-only模式写入日志。当redis重启时,执行一遍日志里面的命令,重新构建数据。注:AOF默认不是开启的。需要在配置文件中手动开启。
RDB的优缺点
优点:性能高,体积小,速度快
缺点:数据安全性较低
AOF的优缺点
优点:数据安全
缺点:性能差,体积大,速度慢
如何选择两种持久化机制?
一般两种机制同时开启。用AOF确保数据不会丢失,用RDB来作为备用,在AOF出现问题时,可以通过RDB来快速恢复数据。