Redis怎样优雅地关闭AOF_在运行期间动态将appendonly设置为no

CONFIG SET appendonly no 的真实行为是停止追加新命令、触发最终AOF rewrite生成最小化快照文件、清空缓冲区,但不删除原AOF文件且不修改配置项。不能直接关闭正在写入的 AOF 文件,CONFIG SET appendonly no 会触发 Redis 自动重写并清空当前 AOF 缓冲区,但旧 AOF 文件仍保留在磁盘上------这不是"关闭",只是停写新内容。CONFIG SET appendonly no 真实行为是什么这条命令不是"关掉 AOF",而是让 Redis 停止追加新命令到 appendfilename 指定的文件,并在后台完成一次最终的 AOF rewrite(如果缓冲区非空),生成一个最小化快照式 AOF 文件,然后清空缓冲区。原 AOF 文件不会被删除,也不会被自动禁用加载。执行后 redis.conf 中的 appendonly 仍是 yes,重启后仍会加载原 AOF 文件Redis 进程里 INFO persistence 显示 aof_enabled:0,但 aof_current_size 和 aof_base_size 不归零若此时手动删掉 appendfilename 对应的文件,重启会报错:Failed opening the AOF file: No such file or directory想真正停用 AOF,必须做三件事仅靠 CONFIG SET 不足以让 AOF "消失"。要让 Redis 彻底不依赖 AOF 启动,需同步操作配置、文件和持久化策略:先执行 CONFIG SET appendonly no 停止追加再执行 CONFIG SET appendfilename ""(可选,但避免后续误加载)手动删掉磁盘上的 AOF 文件(路径见 CONFIG GET appendfilename),否则重启时仍会尝试加载修改 redis.conf:把 appendonly yes 改成 appendonly no,否则下次重启又启用为什么不能只删文件不改配置Redis 启动时按 redis.conf 的 appendonly 和 appendfilename 决定是否加载 AOF。即使你删了文件,只要 appendonly yes 且 appendfilename 指向某个路径,Redis 就会在启动时检查该路径是否存在;不存在就报错退出,不会自动 fallback 到 RDB。 There's An AI For That 全球领先的 AI 聚合器,收集10,225个AI工具,可用于超过2,548个任务。

相关推荐
Juicedata3 分钟前
腾讯云 x JuiceFS:基于 FoundationDB 的企业级统一存储实践
数据库·人工智能·科技·云计算·腾讯云
Jay-r6 分钟前
手势粒子特效系统 Gesture Particle FX(附源码下载)
python·ai·编程·pygame·百度云·手势控制
额恩6611 分钟前
ResearchPilot 第三阶段总结报告
python·算法
小罗水14 分钟前
第13章 Redis 缓存、幂等锁与任务状态
数据库·redis·缓存
SelectDB技术团队24 分钟前
当 PostgreSQL 面临性能瓶颈:80TB 电商业务迁移至 Apache Doris 的实践思考
数据库·postgresql·apache
红叶舞24 分钟前
基于线段树的数据结构
数据结构·python·算法
心念枕惊27 分钟前
新写了个直播录制工具,可录制抖音快手斗鱼直播
运维·服务器·数据库
创世宇图29 分钟前
Video2Txt:160 行代码实现本地视频转文字
python·faster-whisper·video2txt·large-v3-turbo
逐米时代1 小时前
向量数据库选型——Chroma、Qdrant、Milvus到底怎么选
数据库·milvus
讓丄帝愛伱1 小时前
JVM线上故障快速排
jvm