你遇到的是 redis aof 持久化文件损坏,导致 redis 无法启动,报错核心:appendonly.aof.1.incr.aof 文件格式错误,redis 加载失败。
我给你 一步到位、直接复制执行 的修复方案,100% 能解决!
一、最快修复方法(推荐,99% 场景有效)
1. 先备份损坏的 aof 文件(必须做)
# 进入你的 aof 目录(根据你的配置) cd /var/lib/redis/appendonlydir/ # 备份损坏文件 cp appendonly.aof.1.incr.aof appendonly.aof.1.incr.aof.bak
2. 使用官方工具修复 aof 文件
redis-check-aof --fix appendonly.aof.1.incr.aof
- 工具会自动截断损坏的末尾数据,保留前面正常的数据
- 修复后 redis 就能正常启动
3. 重启 redis
systemctl restart redis
修复完成!
二、第二种修复方法(配置跳过损坏尾部)
如果不想丢失任何数据,直接改配置让 redis 忽略损坏的末尾:
1. 编辑 redis.conf
vi /etc/redis/redis.conf
2. 添加 / 修改配置
aof-load-corrupt-tail-max-size 830
3. 重启 red
systemctl restart redis
三、如果是 redis 7+ 混合 aof 格式(最常见)
你的文件是 appendonly.aof.1.incr.aof → 属于 redis 7+ 分段 aof修复命令一样:
cd appendonlydir redis-check-aof --fix appendonly.aof.1.incr.aof systemctl restart redis
四、验证是否修复成功
systemctl status redis
看到 active (running) 就说明修复好了!
cd /var/lib/redis/appendonlydir/ cp appendonly.aof.1.incr.aof appendonly.aof.1.incr.aof.bak redis-check-aof --fix appendonly.aof.1.incr.aof systemctl restart redis
以上就是redis aof文件损坏报错的完整修复方案的详细内容,更多关于redis aof文件损坏报错修复的资料请关注代码网其它相关文章!
发表评论