rdb保存文件位置
60秒内修改了5次key,就和触发rdb操作
触发机制
1,save的规则满足的情况下,会触发rdb规则
2,执行flushall命令,也会触发rdb规则
3,退出redis,也会产生rdb文件
备份会自动生成一个dumo.rdb
如何恢复rdb文件
1,只需要把rdb文件放到我们redis启动目录就可以,redis启动的时候会自动检查dump.rdb文件,恢复数据
2,查看需要存放的位置
config get dir
1) "dir"
2) "/usr/local/redis/redis-6.2.1" # 如果在这个目录下存在dump.rdb文件就会自动恢复其中的数据
几乎它默认的配置就可以使用了,但是还要去学习其他的
优点:
1,适合大规模的数据恢复
2,如果你对数据的完整性要求不高
缺点:
1,需要一定的时间间隔进程操作!如果意外宕机,数据就没了
2,fork进程的时候,占用一定的内容空间
AOF
AOF是什么
以日志的形式来记录每个操作,只追加文件,不改写文件
配置文件
模式aof 不是开启的,需要手动开启
重启启动就可以
如果appendonly.aof, redis是启动不起来的
可以通过bin目录下的aof-check.aof修复文件
redis-check-aof --fix appendonly.aof # 修复appendonly.aof
文件正常就可以正常启动redis了
优点和缺点
appendonly no # 默认是不开启aof支持的,模式是使用rdb方式持久化的,大部分情况下,rdb完全够用
appendfilename "appendonly.aof" # 持久化文件名称
# appendfsync always
appendfsync everysec # 每秒执行一次sync,可能会丢失ls数据
# appendfsync no
优点:
1、每一次修改都需要同步,文件的完整性会更加好
2、每秒同步一次,可能会丢失一秒的数据
3、从不同步,效率最高的
缺点:
1、相对于文件来说,aof远远大于rdb,修复速度也比rdb慢
2、aof运行效率也比rdb慢,所以我们redis默认的配置就是rdb持久化