RDB(Redis DataBase)
触发机制
- save的规则满足的情况下,会自动触发rdb规则
- 执行flushall 命令,也会触发我们的rdb规则
-
恢复rdb文件
只需要将rdb文件放在我们redis启动目录就可以,redis启动的时候会自动检查dump.rdb恢复其中的数据!
查看需要存在的位置
hello-chen.cn:6379> config get dir
1) "dir"
2) "/www/server/redis"
优缺点
优点:
适合大规模的数据恢复
- 对数据的完整性要不高
缺点:
- 需要一定的时间间隔进程操作!如果redis意外宕机了,这个最后一次修改数据就没有的了
- fork进程的时候,会占用一定的内容空间
AOF(Append Only File)
```bash appendonly no #默认是不开启aof模式的,默认是使用rdb方式持久化的,在大部分所有的情况下,rdb完全够用! appendfilename “appendonly.aof”#持久化的文件的名字
appendfsync always #每次修改都会sync。消耗性能
appendfsync everysec #每秒执行一次sync,可能会丢失这1s的数据!
appendfsync no#不执行sync,这个时候操作系统自己同步数据,速度最快!
优缺点
优点:
- 每一次修改都同步,文件的完整会更加好!
- 每秒同步一次,可能会丢失一秒的数据3、从不同步,效率最高的!
缺点:
- 相对于数据文件来说,aof远远大于rdb,修复的速度也比rdb慢!
- Aof运行效率也要比b慢,所以我们redis默认的配置就是rdb持久化!