云数据库Redis支持自定义部分实例参数,不同的引擎版本和架构支持的参数有所区别,本文为您介绍各参数的详细说明与通用的设置方法。
注意事项
由于部分参数对实例的小版本有一定依赖,如果小版本过低在设置时可能提示如下错误。您需要将实例升级至最新的小版本。具体操作,请参见升级小版本。

设置参数
- 登录Redis管理控制台。
- 在顶部菜单栏的左上角,选择实例所属的地域。
- 在实例列表页,单击目标实例ID。
- 在左侧导航栏,单击参数设置。
- 找到目标参数,单击其操作列的修改。
- 在弹出的对话框中设置该参数的值。关于参数和参数值的说明,请根据Redis示例的引擎版本,选择查看下文的说明。
警告 部分参数在提交修改后会自动重启实例(重启过程中实例会发生秒级闪断,请谨慎操作),详情请参见目标参数的重启生效列。
- 单击确定。
参数说明概览
由于不同引擎版本和架构支持设置的参数有所区别,您可以单击下表中的链接快速跳转至对应引擎版本的参数说明。
为便于阅读,约定本文表格中的✔️表示该架构支持该参数,❌表示该架构不支持该参数。
引擎版本 | 对应链接 |
---|---|
Redis 6.0版本 | Redis 6.0版本支持配置的参数 |
Redis 5.0版本 | Redis 5.0版本支持配置的参数 |
Redis 4.0版本 | Redis 4.0版本支持配置的参数 |
Redis 2.8版本 | Redis 2.8版本支持配置的参数 |
Redis 6.0版本支持配置的参数
参数 | 说明 | 标准架构 |
---|---|---|
#no_loose_disabled-commands | 设置禁用命令,可根据业务需求禁用某些高危命令或高时间复杂度的命令,例如flushall、flushdb、keys、hgetall、eval、evalsha、script等。
说明 命令以小写字母的形式填写,各命令之间英文逗号(,)分隔。
|
✔️ |
#no_loose_sentinel-enabled | 开启或关闭哨兵(Sentinel)兼容模式,可选值:
|
✔️ |
appendonly | 开启或关闭主节点的AOF持久化功能,可选值:
|
✔️ |
client-output-buffer-limit pubsub | 限制对发布订阅客户端的输出缓冲,参数值格式为<hard limit> <soft limit> <soft seconds> ,默认值为33554432 8388608 60。
|
✔️ |
dynamic-hz | 开启或关闭动态hz,取值:
|
✔️ |
hash-max-ziplist-entries |
哈希对象同时满足以下两个条件时, 使用ziplist编码。
|
✔️ |
hash-max-ziplist-value |
哈希对象同时满足以下两个条件时, 使用ziplist编码。
|
✔️ |
hz |
设置Redis后台任务执行频率,例如清除过期键任务。取值范围为1~500,默认值为10,即每秒执行10次。
说明 该值越大,CPU资源消耗越多,但在过期键较多的情况下清理频率也更高,同时Redis能够更精确地处理超时。建议取值不要超过100。
|
✔️ |
lazyfree-lazy-eviction | 是否开启基于lazyfree的驱逐功能,可选值:
|
✔️ |
lazyfree-lazy-expire | 是否开启基于lazyfree的过期key删除功能,可选值:
|
✔️ |
lazyfree-lazy-server-del | RENAME、SUNIONSTORE等命令是否基于lazyfree异步删除数据,可选值:
|
✔️ |
lazyfree-lazy-user-del | 执行DEL命令时是否基于lazyfree异步删除数据,可选值:
|
✔️ |
list-compress-depth |
列表中两端不被压缩的节点个数,取值范围0~65535。
|
✔️ |
list-max-ziplist-size |
|
✔️ |
maxmemory-policy |
设置缓存满后Redis删除内容的策略,您可以在如下八种策略中进行选择。LRU表示最近最少使用的。LFU表示最不常用的。LRU,LFU和volatile-ttl都是使用近似随机算法实现的。
|
✔️ |
notify-keyspace-events |
notify-keyspace-events的参数值可以是以下字符的任意组合,它指定了服务器该发送哪些类型的通知。
说明 输入的参数中至少包含K或E, 否则不会有任何通知被分发。
|
✔️ |
set-max-intset-entries |
当Set集合内的数据符合以下条件时,会使用intset编码。
|
✔️ |
slowlog-log-slower-than |
设置慢日志的记录阈值,即设置对执行时间大于多少微秒的操作进行记录。取值范围10000~10000000,默认值为10000。 |
✔️ |
slowlog-max-len |
慢日志最多保存记录条数,取值范围100~10000,默认值为1024。 |
✔️ |
stream-node-max-bytes |
Stream中每个宏节点(Macro Node)能够占用的最大内存,取值范围:0~999,999,999,999,999。
说明 0表示无限制。
|
✔️ |
stream-node-max-entries |
Stream中每个宏节点中可存储条目的最大数量,取值范围:0~999,999,999,999,999。
说明 0表示无限制。
|
✔️ |
timeout |
在客户端连接空闲时长达到指定值时关闭连接,取值范围:0~100,000,单位为秒。
说明 0表示不开启。
|
✔️ |
zset-max-ziplist-entries |
排序集合对象同时满足以下两个条件时, 使用ziplist编码。
|
✔️ |
zset-max-ziplist-value | ✔️ |
Redis 5.0版本支持配置的参数
参数 | 说明 | 标准架构 | 集群架构 | 读写分离架构 |
---|---|---|---|---|
#no_loose_audit-read-enabled |
开启或关闭读请求审计,开启后审计日志中显示读请求。可选值:
|
❌ | ✔️ | ✔️ |
#no_loose_check-whitelist-always |
开启专有网络免密后默认不检查客户端的IP是否在Redis白名单中,此时如果将该参数的值设置为yes,则白名单依然生效。可选值:
|
✔️ | ✔️ | ✔️ |
#no_loose_disabled-commands |
设置禁用命令,可根据业务需求禁用某些高危命令或高时间复杂度的命令,例如flushall、flushdb、keys、hgetall、eval、evalsha、script等。
说明 命令以小写字母的形式填写,多个命令间使用英文逗号(,)分隔。
|
✔️ | ✔️ | ✔️ |
#no_loose_sentinel-enabled |
开启或关闭哨兵(Sentinel)兼容模式,可选值:
|
✔️ | ✔️ | ✔️ |
#no_loose_ssl-enabled |
开启或关闭SSL加密连接,可选值:
|
❌ | ✔️ | ✔️ |
#no_loose_statistics-cmds |
要统计的命令,默认为空,即不统计。多个命令以英文逗号(,)分隔。 |
❌ | ✔️ | ✔️ |
#no_loose_statistics-ip-enable |
是否开启IP统计,可选值:
|
❌ | ✔️ | ✔️ |
#no_loose_statistics-keys |
要统计的Key,默认为空,即不统计。多个Key以英文逗号(,)分隔。 |
❌ | ✔️ | ✔️ |
#no_loose_tls-min-version |
设置实例支持的TLS最低版本,可选值:
|
❌ | ✔️ | ✔️ |
cluster_compat_enable |
开启或关闭原生Redis cluster语法兼容,可选值:
|
❌ | ✔️ | ✔️ |
max_session_processing |
单个连接允许堆积的最大请求数。代理节点转发客户端的请求给数据节点,但是未收到数据节点的回复,此时该请求即处于堆积状态。该参数主要用于限制代理节点前后端处理能力差异导致的请求堆积,避免内存上涨的问题。 |
❌ | ✔️ | ✔️ |
ptod_enabled |
是否将客户端的IP地址通过代理节点透传到数据节点,可选值:
|
❌ | ✔️ | ✔️ |
readonly_lua_route_ronode_enable |
开启或关闭只读副本的Lua执行模式,可选值:
|
❌ | ❌ | ✔️ |
read_request_only_ronode_whenrwsplit_enable |
开启或关闭只读账号请求定向转发,可选值:
|
❌ | ❌ | ✔️ |
rt_threshold_ms |
代理服务器中的慢日志阈值,单位为毫秒(ms)。如果代理服务器处理一个请求的时间超过该阈值,则会生成一条慢日志。
说明 计时方式:从代理服务器向数据节点发出请求开始,到代理服务器收到响应结束。
|
❌ | ✔️ | ✔️ |
script_check_enable |
检查Lua脚本涉及的key是否在相同slot(槽),可选值:
|
❌ | ✔️ | ✔️ |
transfer_subscrible_to_psubscrible_enable |
开启或关闭SUBSCRIBE转PSUBSCRIBE功能,可选值:
|
❌ | ✔️ | ✔️ |
appendonly |
开启或关闭主节点的AOF持久化功能,可选值:
|
✔️ | ✔️ | ✔️ |
client-output-buffer-limit pubsub |
限制对发布订阅客户端的输出缓冲,参数值格式为
<hard limit> <soft limit> <soft seconds> ,默认值为33554432 8388608 60。
|
✔️ | ✔️ | ✔️ |
dynamic-hz |
开启或关闭动态hz,可选值:
|
✔️ | ❌ | ❌ |
hash-max-ziplist-entries |
哈希对象同时满足以下两个条件时, 使用ziplist编码。
|
✔️ | ✔️ | ✔️ |
hash-max-ziplist-value |
哈希对象同时满足以下两个条件时, 使用ziplist编码。
|
✔️ | ✔️ | ✔️ |
hz |
设置Redis后台任务执行频率,例如清除过期键任务。取值范围为1~500,默认值为10,即每秒执行10次。
说明 该值越大,CPU资源消耗越多,但在过期键较多的情况下清理频率也更高,同时Redis能够更精确地处理超时。建议取值不要超过100。
|
✔️ | ✔️ | ✔️ |
lazyfree-lazy-eviction |
是否开启基于lazyfree的驱逐功能,可选值:
|
✔️ | ✔️ | ✔️ |
lazyfree-lazy-expire |
是否开启基于lazyfree的过期key删除功能,可选值:
|
✔️ | ✔️ | ✔️ |
lazyfree-lazy-server-del |
DEL命令是否基于lazyfree异步删除数据,可选值:
|
✔️ | ✔️ | ✔️ |
list-compress-depth |
列表中两端不被压缩的节点个数,取值范围0~65535。
|
✔️ | ✔️ | ✔️ |
list-max-ziplist-size |
|
✔️ | ✔️ | ✔️ |
maxmemory-policy |
设置缓存满后Redis删除内容的策略,您可以在如下八种策略中进行选择。LRU表示最近最少使用的。LFU表示最不常用的。LRU,LFU和volatile-ttl都是使用近似随机算法实现的。
|
✔️ | ✔️ | ✔️ |
notify-keyspace-events |
notify-keyspace-events的参数值可以是以下字符的任意组合,它指定了服务器该发送哪些类型的通知。
说明 输入的参数中至少包含K或E, 否则不会有任何通知被分发。
|
✔️ | ✔️ | ✔️ |
set-max-intset-entries |
当Set集合内的数据符合以下条件时,会使用intset编码。
|
✔️ | ✔️ | ✔️ |
slowlog-log-slower-than |
设置慢日志的记录阈值,即设置对执行时间大于多少微秒的操作进行记录。取值范围10000~10000000,默认值为10000。 |
✔️ | ✔️ | ✔️ |
slowlog-max-len |
慢日志最多保存记录条数,取值范围100~10000,默认值为1024。 |
✔️ | ✔️ | ✔️ |
stream-node-max-bytes |
Stream中每个宏节点(Macro Node)能够占用的最大内存,取值范围:0~999,999,999,999,999。
说明 0表示无限制。
|
✔️ | ❌ | ❌ |
stream-node-max-entries |
Stream中每个宏节点中可存储条目的最大数量,取值范围:0~999,999,999,999,999。
说明 0表示无限制。
|
✔️ | ❌ | ❌ |
timeout |
在客户端连接空闲时长达到指定值时关闭连接,取值范围:0~100,000,单位为秒。
说明 0表示不开启。
|
✔️ | ✔️ | ✔️ |
zset-max-ziplist-entries |
排序集合对象同时满足以下两个条件时, 使用ziplist编码。
|
✔️ | ✔️ | ✔️ |
zset-max-ziplist-value | ✔️ | ✔️ | ✔️ |
Redis 4.0版本支持配置的参数
参数 | 说明 | 标准架构 | 集群架构 | 读写分离架构 |
---|---|---|---|---|
#no_loose_audit-read-enabled |
开启或关闭读请求审计,开启后审计日志中显示读请求。可选值:
|
❌ | ✔️ | ✔️ |
#no_loose_check-whitelist-always |
开启专有网络免密后默认不检查客户端的IP是否在Redis白名单中,此时如果将该参数的值设置为yes,则白名单依然生效。可选值:
|
✔️ | ✔️ | ✔️ |
#no_loose_disabled-commands |
设置禁用命令,可根据业务需求禁用某些高危命令或高时间复杂度的命令,例如flushall、flushdb、keys、hgetall、eval、evalsha、script等。
说明 命令以小写字母的形式填写,多个命令间使用英文逗号(,)分隔。
|
✔️ | ✔️ | ✔️ |
#no_loose_sentinel-enabled |
开启或关闭哨兵(Sentinel)兼容模式,可选值:
|
✔️ | ✔️ | ✔️ |
#no_loose_ssl-enabled |
开启或关闭SSL加密连接,可选值:
|
❌ | ✔️ | ✔️ |
#no_loose_statistics-cmds |
要统计的命令,默认为空,即不统计。多个命令以英文逗号(,)分隔。 |
❌ | ✔️ | ✔️ |
#no_loose_statistics-ip-enable |
是否开启IP统计,可选值:
|
❌ | ✔️ | ✔️ |
#no_loose_statistics-keys |
要统计的Key,默认为空,即不统计。多个Key以英文逗号(,)分隔。 |
❌ | ✔️ | ✔️ |
#no_loose_tls-min-version |
设置实例支持的TLS最低版本,可选值:
|
❌ | ✔️ | ✔️ |
cluster_compat_enable |
开启或关闭原生Redis cluster语法兼容,可选值:
|
❌ | ✔️ | ✔️ |
max_session_processing |
单个连接允许堆积的最大请求数。代理节点转发客户端的请求给数据节点,但是未收到数据节点的回复,此时该请求即处于堆积状态。该参数主要用于限制代理节点前后端处理能力差异导致的请求堆积,避免内存上涨的问题。 |
❌ | ✔️ | ✔️ |
ptod_enabled |
是否将客户端的IP地址通过代理节点透传到数据节点,可选值:
|
❌ | ✔️ | ✔️ |
readonly_lua_route_ronode_enable |
开启或关闭只读副本的Lua执行模式,可选值:
|
❌ | ❌ | ✔️ |
read_request_only_ronode_whenrwsplit_enable |
开启或关闭只读账号请求定向转发,可选值:
|
❌ | ❌ | ✔️ |
rt_threshold_ms |
代理服务器中的慢日志阈值,单位为毫秒(ms)。如果代理服务器处理一个请求的时间超过该阈值,则会生成一条慢日志。
说明 计时方式:从代理服务器向数据节点发出请求开始,到代理服务器收到响应结束。
|
❌ | ✔️ | ✔️ |
script_check_enable |
检查Lua脚本涉及的key是否在相同slot(槽),可选值:
|
❌ | ✔️ | ✔️ |
transfer_subscrible_to_psubscrible_enable |
开启或关闭SUBSCRIBE转PSUBSCRIBE功能,可选值:
|
❌ | ✔️ | ✔️ |
appendonly |
开启或关闭主节点的AOF持久化功能,可选值:
|
✔️ | ✔️ | ✔️ |
client-output-buffer-limit pubsub |
限制对发布订阅客户端的输出缓冲,参数值格式为
<hard limit> <soft limit> <soft seconds> ,默认值为33554432 8388608 60。
|
✔️ | ✔️ | ✔️ |
hash-max-ziplist-entries |
哈希对象同时满足以下两个条件时, 使用ziplist编码。
|
✔️ | ✔️ | ✔️ |
hash-max-ziplist-value |
哈希对象同时满足以下两个条件时, 使用ziplist编码。
|
✔️ | ✔️ | ✔️ |
hz |
设置Redis后台任务执行频率,例如清除过期键任务。取值范围为1~500,默认值为10,即每秒执行10次。
说明 该值越大,CPU资源消耗越多,但在过期键较多的情况下清理频率也更高,同时Redis能够更精确地处理超时。建议取值不要超过100。
|
✔️ | ✔️ | ✔️ |
lazyfree-lazy-eviction |
是否开启基于lazyfree的驱逐功能,可选值:
|
✔️ | ✔️ | ✔️ |
lazyfree-lazy-expire |
是否开启基于lazyfree的过期key删除功能,可选值:
|
✔️ | ✔️ | ✔️ |
lazyfree-lazy-server-del |
DEL命令是否基于lazyfree异步删除数据,可选值:
|
✔️ | ✔️ | ✔️ |
list-compress-depth |
列表中两端不被压缩的节点个数,取值范围0~65535。
|
✔️ | ✔️ | ✔️ |
list-max-ziplist-size |
|
✔️ | ✔️ | ✔️ |
maxmemory-policy |
设置缓存满后Redis删除内容的策略,您可以在如下八种策略中进行选择。LRU表示最近最少使用的。LFU表示最不常用的。LRU,LFU和volatile-ttl都是使用近似随机算法实现的。
|
✔️ | ✔️ | ✔️ |
notify-keyspace-events |
notify-keyspace-events的参数值可以是以下字符的任意组合,它指定了服务器该发送哪些类型的通知。
说明 输入的参数中至少包含K或E, 否则不会有任何通知被分发。
|
✔️ | ✔️ | ✔️ |
set-max-intset-entries |
当Set集合内的数据符合以下条件时,会使用intset编码。
|
✔️ | ✔️ | ✔️ |
slowlog-log-slower-than |
设置慢日志的记录阈值,即设置对执行时间大于多少微秒的操作进行记录。取值范围10000~10000000,默认值为10000。 |
✔️ | ✔️ | ✔️ |
slowlog-max-len |
慢日志最多保存记录条数,取值范围100~10000,默认值为1024。 |
✔️ | ✔️ | ✔️ |
timeout |
在客户端连接空闲时长达到指定值时关闭连接,取值范围:0~100,000,单位为秒。
说明 0表示不开启。
|
✔️ | ✔️ | ✔️ |
zset-max-ziplist-entries |
排序集合对象同时满足以下两个条件时, 使用ziplist编码。
|
✔️ | ✔️ | ✔️ |
zset-max-ziplist-value | ✔️ | ✔️ | ✔️ |
Redis 2.8版本支持配置的参数
参数 | 说明 | 标准版 | 集群版 | 读写分离版 |
---|---|---|---|---|
#no_loose_audit-read-enabled |
开启或关闭读请求审计,开启后审计日志中显示读请求。可选值:
|
❌ | ✔️ | ✔️ |
#no_loose_disabled-commands |
设置禁用命令,可根据业务需求禁用某些高危命令或高时间复杂度的命令,例如flushall、flushdb、keys、hgetall、eval、evalsha、script等。
说明 命令以小写字母的形式填写,多个命令间使用英文逗号(,)分隔。
|
✔️ | ✔️ | ✔️ |
#no_loose_ssl-enabled |
开启或关闭SSL加密连接,可选值:
|
❌ | ✔️ | ✔️ |
#no_loose_statistics-cmds |
要统计的命令,默认为空,即不统计。多个命令以英文逗号(,)分隔。 |
❌ | ✔️ | ✔️ |
#no_loose_statistics-ip-enable |
是否开启IP统计,可选值:
|
❌ | ✔️ | ✔️ |
#no_loose_statistics-keys |
要统计的Key,默认为空,即不统计。多个Key以英文逗号(,)分隔。 |
❌ | ✔️ | ✔️ |
#no_loose_tls-min-version |
设置实例支持的TLS最低版本,可选值:
|
❌ | ✔️ | ✔️ |
cluster_compat_enable |
开启或关闭原生Redis cluster语法兼容,可选值:
|
❌ | ✔️ | ✔️ |
max_session_processing |
单个连接允许堆积的最大请求数。代理节点转发客户端的请求给数据节点,但是未收到数据节点的回复,此时该请求即处于堆积状态。该参数主要用于限制代理节点前后端处理能力差异导致的请求堆积,避免内存上涨的问题。 |
❌ | ✔️ | ✔️ |
read_request_only_ronode_whenrwsplit_enable |
开启或关闭只读账号请求定向转发,可选值:
|
❌ | ❌ | ✔️ |
rt_threshold_ms |
代理服务器中的慢日志阈值,单位为毫秒(ms)。如果代理服务器处理一个请求的时间超过该阈值,则会生成一条慢日志。
说明 计时方式:从代理服务器向数据节点发出请求开始,到代理服务器收到响应结束。
|
❌ | ✔️ | ✔️ |
script_check_enable |
检查Lua脚本涉及的key是否在相同slot(槽),可选值:
|
❌ | ✔️ | ✔️ |
appendonly |
开启或关闭主节点的AOF持久化功能,可选值:
|
✔️ | ✔️ | ✔️ |
client-output-buffer-limit pubsub |
限制对发布订阅客户端的输出缓冲,参数值格式为
<hard limit> <soft limit> <soft seconds> ,默认值为33554432 8388608 60。
|
✔️ | ✔️ | ✔️ |
hash-max-ziplist-entries |
哈希对象同时满足以下两个条件时, 使用ziplist编码。
|
✔️ | ✔️ | ✔️ |
hash-max-ziplist-value |
哈希对象同时满足以下两个条件时, 使用ziplist编码。
|
✔️ | ✔️ | ✔️ |
hz |
设置Redis后台任务执行频率,例如清除过期键任务。取值范围为1~500,默认值为10,即每秒执行10次。
说明 该值越大,CPU资源消耗越多,但在过期键较多的情况下清理频率也更高,同时Redis能够更精确地处理超时。建议取值不要超过100。
|
✔️ | ✔️ | ✔️ |
list-max-ziplist-entries |
链表对象同时满足以下两个条件时, 使用ziplist编码。
|
✔️ | ✔️ | ✔️ |
list-max-ziplist-value |
链表对象同时满足以下两个条件时, 使用ziplist编码。
|
✔️ | ✔️ | ✔️ |
maxmemory-policy |
设置缓存满后Redis删除内容的策略,您可以在如下八种策略中进行选择。LRU表示最近最少使用的。LFU表示最不常用的。LRU,LFU和volatile-ttl都是使用近似随机算法实现的。
|
✔️ | ✔️ | ✔️ |
notify-keyspace-events |
notify-keyspace-events的参数值可以是以下字符的任意组合,它指定了服务器该发送哪些类型的通知。
说明 输入的参数中至少包含K或E, 否则不会有任何通知被分发。
|
✔️ | ✔️ | ✔️ |
set-max-intset-entries |
当Set集合内的数据符合以下条件时,会使用intset编码。
|
✔️ | ✔️ | ✔️ |
slowlog-log-slower-than |
设置慢日志的记录阈值,即设置对执行时间大于多少微秒的操作进行记录。取值范围10000~10000000,默认值为10000。 |
✔️ | ✔️ | ✔️ |
slowlog-max-len |
慢日志最多保存记录条数,取值范围100~10000,默认值为1024。 |
✔️ | ✔️ | ✔️ |
zset-max-ziplist-entries |
排序集合对象同时满足以下两个条件时, 使用ziplist编码。
|
✔️ | ✔️ | ✔️ |
zset-max-ziplist-value | ✔️ | ✔️ | ✔️ |
在文档使用中是否遇到以下问题
更多建议
匿名提交