*Redis CONFIG 命令
查看和修改 Redis 配置参数。
*语法
CONFIG GET parameter [parameter ...]
CONFIG SET parameter value
CONFIG RESETSTAT
CONFIG REWRITE
*子命令说明
| 子命令 | 说明 |
|---|---|
| GET | 获取一个或多个配置参数的值 |
| SET | 设置配置参数(运行时生效,不持久化) |
| RESETSTAT | 重置 INFO 统计信息 |
| REWRITE | 将当前配置写入 redis.conf(持久化) |
*返回值
| 子命令 | 返回值 |
|---|---|
| GET | 参数名和值数组 |
| SET | OK |
| RESETSTAT | OK |
| REWRITE | OK 或错误 |
*时间复杂度
O(1)
*
*示例
> CONFIG GET maxmemory
1) "maxmemory"
2) "0"
> CONFIG SET maxmemory 1gb
OK
> CONFIG GET maxmemory maxmemory-policy
1) "maxmemory"
2) "1073741824"
3) "maxmemory-policy"
4) "noeviction"
> CONFIG RESETSTAT
OK
> CONFIG REWRITE
OK
*常见错误
- 参数不存在:CONFIG GET 不存在的参数返回空数组。
- 值无效:CONFIG SET 传入无效值会报错。
*最佳实践
- 运行时调优:CONFIG SET 实时调整参数(如 maxmemory、timeout),无需重启。
- 持久化配置:修改后 CONFIG REWRITE 写入配置文件,确保重启后生效。
*FAQ
Q: CONFIG SET 修改后重启还有效吗? A: 不一定。CONFIG SET 只修改内存中的配置,重启后恢复为配置文件中的值。需要 CONFIG REWRITE 持久化。