OpsxDB 文档 v0.1

Redis 工作台

更新于 2026-09-20

Redis 连接使用专用表单(redis)。连上后,对象树是键空间浏览器,编辑器是 Redis 命令行 —— 和 SQL 共用同一套输入框,不另开 CLI 页。

为什么命令行不单独做一套

SQL 工作台已经有:多 Tab、⌘/Ctrl+Enter、查询历史、书签、危险确认、取消。Redis 命令同样是「输入 → 执行 → 结果表」。

拆成独立 CLI(终端 REPL)会让快捷键、历史、危险确认分叉,也和 Navicat 式多引擎工作台不一致。

因此:

SQL Redis
输入框 同一 CodeMirror 同一 CodeMirror(占位/补全换成命令)
切分 分号语句 按行(SET k "a;b" 不会被分号拆开)
执行 ⌘/Ctrl+Enter 当前语句或选区 ⌘/Ctrl+Enter 当前行或选区
结果 结果表 命令结果表;从对象树打开键则进入键详情

Another Redis Desktop Manager 的独立 CLI Tab、opsxsql 的单行命令 + 输出日志,列为后续 P1,不是现在的主路径。

键空间浏览

对象树对 Redis 显示 DB0–15(Cluster 仅 0)。展开库后:

  • SCAN 过滤:输入 user:* 点「应用」;生产大库请带前缀,避免扫全库。最多展示 500 个键,超出提示截断。
  • 按分隔符编文件夹:连接表单的「键分隔符」默认 :,CEX:FOLLOW:FOLLOWERS:1 显示为 CEX / FOLLOW / FOLLOWERS / 1。文件夹显示数量;右键可「只看此前缀」「在此新建键」。
  • 类型色点:string 绿 / hash 蓝 / list 橙 / set 紫 / zset 青。
  • 点键:打开键详情(不是假 SELECT)。

键详情

对标 Another Redis Desktop Manager 的 Hash/List/Set 视图:

  • 类型徽章、键名(回车重命名)、TTL(回车或「保存 TTL」,-1 永久)、刷新、导出还原命令、删除;
  • 结构表:Hash 为 ID / Field / Value,JSON 值自动美化;可新增字段、编辑、删除;
  • JSON 视图:整体格式化;
  • 表内关键字过滤。

String 可直接改值保存。

命令执行

编辑器直接写 Redis 命令:

PING
SET demo:key "hello" EX 60
GET demo:key
HGETALL demo:hash
SCAN 0 MATCH demo:* COUNT 100
INFO memory
  • 未点名的命令走通用 Do(EXISTS / ECHO / INFO / CLIENT LIST 等不必再加白名单);
  • FLUSHALL / FLUSHDB / KEYS / CONFIG 仍要二段确认;
  • KEYS * 在大库上会阻塞 —— 请用 SCAN MATCH。

切换逻辑库(SELECT)

SELECT 1 是 Redis 官方的切库命令,编辑器直接支持 —— 语义与 redis-cli 一致:切换后本 Tab 的后续命令都在目标库执行:

SELECT 1
GET db1:only:key      # 在 db1 执行
  • 没有也没有 USE(那是 SQL 语法)—— 输入 USE db1 会得到 Redis 原生报错
    ERR unknown command 'USE',与 redis-cli 行为一致;
  • 切库只影响当前查询 Tab(多 Tab 可各连各的库),左侧对象树点开对应库可浏览键;
  • Cluster 模式只有 DB 0,SELECT 无效。

连接参数

字段 说明
host / port 单机默认 127.0.0.1:6379
password / user ACL / requirepass
database 逻辑库序号(0–15 常见;Cluster 忽略)
键分隔符 对象树文件夹分隔,默认 :
ssl TLS
redisMode standalone(默认)/ sentinel / cluster
redisNodes Sentinel / Cluster 节点列表,host:port 多行或逗号分隔
masterName Sentinel 主节点名(必填)
sentinelPassword Sentinel 密码(可空)

Sentinel

模式选「哨兵」,填写至少一个 Sentinel 地址和 masterName(如 mymaster)。逻辑库序号仍可用。

Cluster

模式选「集群」,填写至少一个种子节点。Cluster 不支持 SELECT 多库,对象树只暴露 DB 0。槽位路由由客户端处理,键浏览走 SCAN。

环境:Sentinel / Cluster 表单与后端已接好;真实拓扑联调见 docs/BACKLOG.md 环境缺口。