Redis误操作flushdb/flushall恢复办法

恢复思路

如果Redis启用AOF持久化,则可以根据AOF文件进行恢复。AOF文件是将所有写指令以文本形式保存的,可以将AOF文件中的flushdb/flushall命令删除,再重启Redis即可。

误操作后首先要做的事

如果发生了AOF重写,AOF文件中的数据将被覆盖,数据将无法恢复。所以在误操作之后,首先要做的是避免发生AOF重写。第一,不要手动执行bgrewriteaof命令;第二,修改触发AOF重写的相关参数,将参数值调大,避免自动触发AOF重写。

恢复过程

1)调整触发AOF重写的参数值:

CONFIG SET auto-aof-rewrite-percentage 1000
CONFIG SET auto-aof-rewrite-min-size 100000000000

2)删除AOF文件中误操作的写指令:

*1
$8
FLUSHALL

3)检查AOF文件:

# redis-check-aof appendonly_6379.aof

4)重启Redis服务,恢复数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值