教程 > Redis教程 > Redis 命令 阅读:10

Redis CONFIG REWRITE 命令

Redis CONFIG REWRITE 命令

返回 Redis 服务器


Redis CONFIG REWRITE 命令对启动 Redis 服务器时所指定的 redis.conf 配置文件进行改写。

CONFIG SET 命令可以对服务器的当前配置进行修改, 而修改后的配置可能和 redis.conf 文件中所描述的配置不一样, CONFIG REWRITE 的作用就是通过尽可能少的修改, 将服务器当前所使用的配置记录到 redis.conf 文件中。

语法

redis Config rewrite 命令基本语法如下:

redis 127.0.0.1:6379> CONFIG REWRITE parameter

重写以非常保守的方式执行:

  • 注释和原始 redis.conf 文件的整体结构会尽可能的保留下来。
  • 如果一个选项在旧的 redis.conf 文件中已经存在,那么它会在相同的位置(行号)被重写。
  • 如果某个选项在配置文件中尚不存在,但被设置为了该选项的默认值,那么他将不会被重写进程写入配置文件。
  • 如果某个选项在配置文件中尚不存在,但被设置了一个非默认值,那么它会被追加到文件的末尾。
  • 未使用的行将会留空。例如,如果你之前在配置文件中有多个 save 配置项,但由于你禁用了 RDB 持久化,当前的 save 配置变少了或者变为空,那么所有的那些行将会是空行。

如果原始文件由于某些原因不再存在,CONFIG REWRITE 也能够从头开始重写配置文件。但是,如果服务器启动的时候没有指定任何配置文件,则 CONFIG REWRITE 将只会返回一个错误。

可用版本

>= 2.8.0

返回值

一个状态值:如果配置重写成功则返回 OK ,失败则返回一个错误。

示例

以下是执行 CONFIG REWRITE 前, 被载入到 Redis 服务器的 redis.conf 文件中关于 appendonly 选项的设置:

# ... 其他选项
appendonly no
# ... 其他选项

在执行以下命令之后:

127.0.0.1:6379> CONFIG GET appendonly           # appendonly 处于关闭状态
1) "appendonly"
2) "no"

127.0.0.1:6379> CONFIG SET appendonly yes       # 打开 appendonly
OK

127.0.0.1:6379> CONFIG GET appendonly
1) "appendonly"
2) "yes"

127.0.0.1:6379> CONFIG REWRITE                  # 将 appendonly 的修改写入到 redis.conf 中
OK

重写后的 redis.conf 文件中的 appendonly 选项将被改写:

# ... 其他选项
appendonly yes
# ... 其他选项

返回 Redis 服务器

查看笔记

扫码一下
查看教程更方便