redis_info 把 redis INFO 命令返回的服务器运行信息解析成可查询的表, 可用于监控版本、内存、连接数、命中率等运行指标.
等效 DQL
- 虚拟表 SQL
select * from redis_info
select * from redis_info where "group" = 'memory'
select * from redis_info where key = 'redis_version'
- 等效 redis 原生命令
INFO
工具把 INFO 的每一行 key:value 解析为一条记录, 并用 # Group 行填充 group 字段.
返回字段
| 字段 | 类型 | 说明 |
|---|---|---|
| group | string | 信息分组: server/clients/memory/persistence/stats/replication/cpu/keyspace 等 |
| key | string | 指标名, 如 redis_version / used_memory |
| value | string | 指标值(统一以字符串返回) |
可查指标(常用)
| 分组 | 指标 | 含义 |
|---|---|---|
| server | redis_version | redis 版本 |
| clients | connected_clients | 当前连接数 |
| memory | used_memory | 已用内存(字节) |
| memory | used_memory_human | 人类可读的内存占用 |
| memory | maxmemory | 内存上限 |
| stats | total_connections_received | 累计接收连接数 |
| stats | keyspace_hits / keyspace_misses | 命中/未命中次数, 可算命中率 |
| keyspace | db0 下的 keys / expires | 各库 key 总数与过期数 |
命中率可由 keyspace_hits / (keyspace_hits + keyspace_misses) 计算.
查询示例
-- 看版本
select * from redis_info where key = 'redis_version'
-- 看内存相关
select * from redis_info where "group" = 'memory'
-- 看连接数
select * from redis_info where key = 'connected_clients'
-- 分页(默认按 skip/limit)
select * from redis_info limit 20
限制
- group 是 SQL 保留相关词, 过滤分组时建议写成
"group" = 'memory'. - value 统一为字符串, 数值比较需在外层转换.
- 默认取 INFO 全部分段, 可通过 where(= / in) 过滤 group 或 key, 用 skip / limit 分页(默认 limit 20).
相关文档: redis-dao