持久化方案分类:
1.RDB全量持久化,数据快照:
RDB会把内存中的所有数据存放到硬盘的文件中,这个文件也称为RDB快照。
2.AOF增量持久化,命令日志:
AOF会把对数据库的所有读写操作命令记录下来,放到AOF命令日志中。
两种持久化方案的区别:
1.RDB占用的存储空间比AOF要小。
2.AOF恢复数据的速度比RDB要快。
3.如果文件损坏,RDB的数据全部作废,AOF只损失一小部分数据。
4.RDB是fork一个新的线程进行数据加载,最大限度使用系统资源,如果数据量过大,就会造成服务器卡顿。
AOF是一部分一部分地进行加载,不会影响服务器的其他应用。
5.AOF可以回滚误操作。
RDB持久化策略(默认持久化方案)
save 900 1
save 300 10
save 60 10000
# after 900 sec (15 min) if at least 1 key changed
# after 300 sec (5 min) if at least 10 keys changed
# after 60 sec if at least 10000 keys changed
AOF持久化策略(需要手动开启)
# appendfsync always 每一次操作都持久化(会极大影响redis性能)
# appendfsync everyse 每秒进行一次持久化
# appendfsync no 不进行持久化