*Redis CONFIG REWRITE 命令

CONFIG REWRITE 用于将当前运行时配置重写回 redis.conf 配置文件。


*语法

CONFIG REWRITE

*参数说明

无参数。


*返回值

  • OK:重写成功
  • Error:配置文件不存在或权限不足

*时间复杂度

O(1)

*

*示例

*基本用法

> CONFIG SET maxmemory 1gb
OK
> CONFIG REWRITE
OK

*验证重写结果

> CONFIG GET maxmemory
1) "maxmemory"
2) "1073741824"
> CONFIG REWRITE
OK

*常见错误

错误 原因 解决
ERR The server is running without a config file 启动时未指定配置文件 使用 redis-server /path/to/redis.conf 启动

*最佳实践

  • 仅在 CONFIG SET 修改后需要持久化到配置文件时使用
  • 确保 Redis 对配置文件有写权限
  • 重写前备份配置文件
  • 不要在配置文件中手动添加注释,重写后可能丢失

*FAQ

Q1: CONFIG REWRITE 会覆盖所有配置吗? A: 会重写整个配置文件,保留未被修改的原始配置,只更新已变更的参数。

Q2: 和 SAVE 有什么区别? A: SAVE 持久化数据;CONFIG REWRITE 持久化配置到配置文件。

Q3: 没有配置文件可以执行吗? A: 不可以,启动时必须指定配置文件路径。