config set 命令

Config Set 命令可以动态地调整 Redis 服务器的配置而无须重启。可以使用此命令更改不重要的参数或从一个参数切换到另一个持久性选项。你可以使用它修改配置参数,或者改变 Redis 的持久化(Persistence)方式。

语法

CONFIG Set parameter value

返回值

当设置成功时返回 OK ,否则返回一个错误。

实例

redis> CONFIG GET slowlog-max-len
1) "slowlog-max-len"
2) "1024"

redis> CONFIG SET slowlog-max-len 10086
OK

redis> CONFIG GET slowlog-max-len
1) "slowlog-max-len"
2) "10086"


通过 CONFIG GET * 获得 CONFIG SET 命令支持的配置参数列表,该命令是用于获取有关正在运行的 Redis 实例的配置信息的对称命令。所有使用 CONFIG SET 设置的配置参数将会立即被 Redis 加载,并从下一个执行的命令开始生效。

所有支持的参数与[redis.conf][hgcarr22rc]文件中使用的等效配置参数具有相同含义,但有以下重要区别:

  • 在指定字节或其他数量的选项中,不能使用在 redis.conf 中使用的简写形式(如10k,2gb等),所有内容都应该指定为格式良好的64位整数,以配置指令的基本单位表示。但从Redis3.0以及更高版本开始,可以将CONFIG SET与内存单元一起用于maxmemory、客户端输出缓冲以及复制积压大小(repl-backlog-size)指定内存单位。
  • save 参数是一个以空格分隔的整数字符串。每对整数代表一个秒/修改阈值。例如在 redis.conf 中看起来像这样:
    save 900 1
    save 300 10
    这意味着,如果数据集有 1 个以上变更,则在 900 秒后保存;如果有 10 个以上变更,则在 300 秒后就保存,应使用CONFIG SET SAVE “900 1 300 10”来设置。

可以使用 CONFIG SET 命令将持久化从 RDB 快照切换到 AOF 文件(或其他相似的方式)。有关如何执行此操作的详细信息,请查看 persistencepage 。一般来说,你应该知道将 appendonly 参数设置为 yes 将启动后台进程以保存初始 AOF 文件(从内存数据集中获取),并将所有后续命令追加到 AOF 文件,从而达到了与一个 Redis 服务器从一开始就开启了 AOF 选项相同的效果。如果你愿意,可以同时开启 AOF 和 RDB 快照,这两个选项不是互斥的。