AOF(Append Only File)将我们所有的命令都记录下来,恢复的时候就把这个文件全部执行一遍
以日志的形式来记录每个写操作,将Redis执行过的所有指今记录下来(读操作不记录),只许追加文件但不可以改写文件,redis启动之初会读取该文件重新构建数据,换言之,redis重启的话就根据日志文件的内容将写指令从前到后执行一次以完成数据的恢复工作。
aof保存的是appendonly.aof文件
appendonly no #默认是不开启的,需要手动配置,将no改为yes就相当于开启了,重启redis就可以生效了!
如果这个aof文件有错误,这时候redis是启动不了的,我们需要修复这个aof文件,redis给我们
提供了一个工具redis-check-aof --fix
redis-check-aof --fix appendonly.aof #此命令可以修复aof,再次重启
#rewrite重写规则,如果一个aof文件大于64M,太大之后就会fork一个新的进程来将我们的文件进行重写!
aof默认就是文件的无限追加,文件会越来越大
aof
优点:
1.每一次修改都同步,文件的完整性更加好!
2.每秒同步一次,可能会丢失一秒的数据
3.从不同步,效率最高
缺点:
1.相对于数据文件来说,aof远远大于rdb,修复的速度比rdb慢;
2.aof运行效率也要比rdb慢,所以我们redis默认的配置就是rdb持久化;