redis服务没有起来,日志提示“Bad file format reading the append only file”

背景:

放假期间,测试服务器需要关闭,节后来之后重启服务器后,发现redis服务没有启动起来

排查:

查看redis日志,提示"Bad file format reading the append only file。。。。"

分析:

Redis 有两种持久化方案,RDB (Redis DataBase)和 AOF (Append Only File)。

RDB: 是 Redis 默认的持久化方案。在指定的时间间隔内,执行指定次数的写操作,则会将内存中的数据写入到磁盘中。即在指定目录下生成一个dump.rdb文件。Redis 重启会通过加载dump.rdb文件恢复数据。

AOF :Redis 默认不开启。它的出现是为了弥补RDB的不足(数据的不一致性),所以它采用日志的形式来记录每个写操作,并追加到文件中。Redis 重启的会根据日志文件的内容将写指令从前到后执行一次以完成数据的恢复工作

解决:

1、备份好.aof文件;

2、去bin目录下执行,./redis-check-aof --fix xx.aof

提示:

"Successfully truncated AOF",代表成功

3、重启redis服务,服务正常

相关推荐
程序员的世界你不懂9 小时前
【Flask】测试平台开发,新增说明书编写和展示功能 第二十三篇
java·前端·数据库
自学也学好编程9 小时前
【数据库】Redis详解:内存数据库与缓存之王
数据库·redis
JAVA不会写10 小时前
在Mybatis plus中如何使用自定义Sql
数据库·sql
IT 小阿姨(数据库)10 小时前
PgSQL监控死元组和自动清理状态的SQL语句执行报错ERROR: division by zero原因分析和解决方法
linux·运维·数据库·sql·postgresql·centos
ChinaRainbowSea10 小时前
7. LangChain4j + 记忆缓存详细说明
java·数据库·redis·后端·缓存·langchain·ai编程
小马学嵌入式~11 小时前
嵌入式 SQLite 数据库开发笔记
linux·c语言·数据库·笔记·sql·学习·sqlite
Java小白程序员12 小时前
MyBatis基础到高级实践:全方位指南(中)
数据库·mybatis
Monly2112 小时前
人大金仓:merge sql error, dbType null, druid-1.2.20
数据库·sql
鼠鼠我捏,要死了捏12 小时前
Redis缓存穿透、缓存击穿与雪崩防护及性能优化实战指南
redis·cache·performance
不宕机的小马达12 小时前
【Mysql|第一篇】Mysql的安装与卸载、Navicat工具的使用
数据库·mysql