NoSql数据库之Redis的持久化

时间:2023-02-16 10:37:17

有两种持久化方案:RDB和AOF:

1.RDB方式按照一定的时间间隔对数据集创建基于时间点的快照。
2.AOF方式记录Server收到的写操作到日志文件,在Server重启时通过回放这些写操作来重建数据集。该方式类似于MySQL中基于语句格式的binlog。当日志变大时Redis可在后台重写日志。

AOF持久化配置:

1.修改redis.config配置文件,找到appendonly。默认是appendonly no。改成appendonly yes
2.再找到appendfsync 。默认是 appendfsync everysec

2.1.appendfsync always
#每次收到写命令就立即强制写入磁盘,最慢的,但是保证完全的持久化,不推荐使用
2.2.appendfsync everysec
#每秒钟强制写入磁盘一次,在性能和持久化方面做了很好的折中,推荐
2.3.appendfsync no
#完全依赖os,性能最好,持久化没保证

RDB持久化配置:

默认情况下,Redis保存数据集快照到磁盘,名为dump.rdb的二进制文件。可以设置让Redis在N秒内至少有M次数据集改动时保存数据集,或者你也可以手动调用SAVE或者BGSAVE命令。 例如,这个配置会让Redis在每个60秒内至少有1000次键改动时自动转储数据集到磁盘
save 60 1000