redis误操作flushall的补救措施
前提:开启了aof持久化
注意:

  1. 当执行了flushall或者flushdb等手残命令,切记千万不要触发aof重写
  2. 可以利用config set命令将如下两值调巨大,防止重写操作。
    auto-aof-rewrite-percentage 100
    auto-aof-rewrite-min-size 64mb

手残操作:
当redis执行flush操作后的补救措施_第1张图片
当redis执行flush操作后的补救措施_第2张图片
由于我这个远远没有达到aof重写,所以没有设置那两个参数


然后打开aof文件
发现其实就是多了3行记录
当redis执行flush操作后的补救措施_第3张图片
这时候把红框中的三行删掉并保存退出


保险起见,执行check
./redis-check-aof --fix appendonly.aof
当redis执行flush操作后的补救措施
说明是有效的


正常关闭redis并重启redis
当redis执行flush操作后的补救措施
当redis执行flush操作后的补救措施_第4张图片
数据又回来了