You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行BGREWRITEAOF后Redis的AOF文件为空的问题咨询

Redis混合持久化模式下的文件疑问解答

1. 为什么appendonly.aof文件大小为0?

这是因为你启用了Redis的混合AOF持久化架构(通过aof-use-rdb-preamble yes和appenddirname配置开启)。在这个模式下,传统的单一appendonly.aof文件不再存储实际持久化数据,Redis会将全量数据以RDB格式、增量命令以AOF格式拆分存储在appendonlydir目录中。执行BGREWRITEAOF后,Redis生成了新的基础RDB文件,此时还没有新的写入命令产生,所以增量AOF文件为空,而原appendonly.aof仅作为兼容占位文件,因此大小为0。

2. appendonly.aof.3.base.rdb和appendonly.aof.manifest是什么?

  • appendonly.aof.3.base.rdb:这是混合AOF模式下的基础快照文件。执行BGREWRITEAOF时,Redis会把当前全量数据以RDB格式写入该文件——相比纯AOF格式,RDB加载速度更快、占用空间更小,作为AOF的基础部分存在,后续新增的写入命令会对应写入incr.aof文件。文件名中的数字3是版本标识,每次重写都会递增。
  • appendonly.aof.manifest:这是AOF集合的清单文件,记录了当前有效的AOF组成文件信息(比如包含哪些base.rdb和incr.aof)、文件校验值、版本号等元数据。Redis启动时会通过这个文件识别需要加载的持久化文件组合。

3. 启动时Redis会选择哪个RDB文件恢复数据?

由于你的Redis实例启用了AOF(appendonly yes),启动时会优先使用AOF持久化数据恢复:先加载appendonlydir目录下的base.rdb还原全量数据,再加载incr.aof执行增量命令。只有当AOF功能关闭、AOF文件损坏且无法修复时,Redis才会尝试加载常规快照dump.rdb。


内容的提问来源于stack exchange,提问作者Ankit Sahay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 23:50:32