深色模式
数据库工作台
Navicat 式的数据库管理器:左侧连接树统管所有连接,可拖拽布局,会话持久;SQL 编辑器 + 点选式数据 CRUD + 图形化表设计器 + DBA 工具 + 导入导出。Reeve 内嵌了一个受控的 Navicat。
支持的数据库
| 类型 | 说明 |
|---|---|
| MySQL | 5.7 / 8.0 |
| MariaDB / TiDB / OceanBase | MySQL 兼容库类型,复用 MySQL 驱动 |
| PostgreSQL | 12+ |
| SQLite | 本地 / 远端文件 |
| SQL Server | 通过 TDS 协议(tiberius) |
| MongoDB | 文档浏览器 |
| ClickHouse | HTTP 8123 执行器 |
| Redis | 一等数据源(DB0-15 + key 树 + INFO 仪表盘,见下) |
进入
侧边栏页与工作台标签共用同一套 SQL 工作台组件,会话状态持久——切到别的页再回来,打开的连接和 SQL 草稿都还在。
凭据来源
数据库工作台必须先有凭据,三种来源:
- 手动创建:服务凭据页或工作台里新建 DB 凭据
- AI 一键安装:MCP 工具
install_with_secret装好的 MySQL / Postgres / Redis 自动入凭据库 - 从已有服务器内查:服务器关联的 DB(如远端 1Panel 装的 MySQL)
连接树
左侧是一棵连接树,而不是单库树——一棵树管所有连接,可同时展开多个连接:
连接树
├─ ● MySQL @ aliyun-prod 绿点=已连,driver 图标,[受控] 徽标
│ ├─ ▸ shop_db
│ │ ├─ 表 (24) 数量徽标
│ │ │ ├─ 🔑 users 列带 PK/FK/索引/NOT NULL 图标
│ │ │ └─ orders
│ │ ├─ 视图 (3)
│ │ ├─ 存储过程 (5)
│ │ └─ 函数
│ └─ ▸ log_db
├─ ○ PostgreSQL @ home-nas 灰点=未连,点击懒连接
└─ ○ SQLite @ app.db- 灰点连接点击即懒连接;断连可双击 / 右键重连,绿点反映真实可达性
- 树顶有过滤框,按名字快速定位
- 连接级操作(创建库 / 同步 / 备份 / 改密 / 实例工具)收纳在树底工具条 + 连接节点右键
- 单击库节点:左侧树展开表,同时右侧显示表清单(对象列表,每行带表图标、注释、导入 / 导出按钮)
可拖拽布局
- 连接树 ↔ 工作区横向可拖拽
- 编辑器 ↔ 结果区纵向可拖拽
- 分割位置记忆,不再是写死的宽度 / 高度
SQL 编辑器
CodeMirror 6 驱动,多 Tab:
- 各方言语法高亮(MySQL / PG / SQLite / SQL Server …)
- 关键字 + 基于元数据的表名 / 列名补全
- Cmd/Ctrl+Enter 执行光标所在语句;Cmd/Ctrl+Shift+Enter 执行整个 Tab
- 运行 SQL 文件采用 Navicat 式布局,消息日志直接显示在下方
数据网格(点选式 CRUD)
双击表名打开数据网格,不写 SQL 也能改数据:
- 列宽可拖,列排序 + WHERE 筛选
- 表头第二行显示列注释(备注)
- 单元格右键 + 双击行内编辑,新增行
- 横向滚动条固定贴面板底部
- 单元格点击查看完整内容(含 BLOB / JSON,BLOB 按 UTF-8 显示)
- 大结果分页
写回也走安全通道
数据网格的改 / 删都走参数化 db_execute + 必带 WHERE 主键,和手写 SQL 一样过危险检查、写审计。
图形化表设计器
中间编辑区以标签页形式打开(对标 Navicat):
- 建表:加列 / 删列、类型、约束、默认值
- 改列(MODIFY) + 索引管理(加 / 删)
- 只读查看表结构 / 建表语句
DBA 工具
- 进程列表 / Kill 会话
- 用户权限 查看
- EXPLAIN 执行计划
- 库级 运行 SQL 文件 / 转储 SQL 文件(库级 SQL,区别于表级 CSV)
- 删表 / 清空表 / 重命名表(人用 DBA 通道 + 二次确认)
建库 / 同步 / 备份
- 建库:支持指定字符集与排序规则(collation,默认
utf8mb4_general_ci) - 多库同步 / 备份恢复
- AI 生成 SQL:用自然语言描述需求,AI 生成 SQL 填进编辑器
导入导出
- 数据网格 / 对象列表 / 库节点 / 表分类节点多处入口
- 表数据导入 / 导出 CSV / SQL
- 结果导出 JSON / CSV,复制为 Markdown 表格
查询历史 & SQL 片段
- 每个连接的执行历史可回溯
- SQL 片段库:常用 SQL 不绑特定凭据,任意编辑器一键插入(见命令片段)
Redis 一等数据源
Redis 凭据进入时切到 Redis 视图(不再只是简单 Key/Value):
- DB0-15 切换
- Key 树:全类型(String / Hash / List / Set / ZSet)增删改查
- INFO 仪表盘:服务器状态可视化
- CLI:直接敲 Redis 命令
- pub/sub:订阅 / 发布
支持的 MCP 工具:
| 工具 | 说明 |
|---|---|
redis_scan | 列 Key(glob 模式) |
redis_get | 取单 Key |
redis_set | 写 Key(TTL 可选) |
redis_del | 删除 Key |
redis_exec | 任意命令(HGETALL / ZRANGEBYSCORE 等) |
人用 vs AI 视角
人用查询
- 你在 SQL 编辑器 / 数据网格里执行的语句不走 AI policy(人用通道)
- 但仍受危险 SQL 检查约束:
- 永久拦:
DROP DATABASE/TRUNCATE/DELETE FROM xxx(无 WHERE) - 二次确认:可疑的
UPDATE/DELETE
- 永久拦:
- 所有执行仍然写审计
AI 走 db_query / db_execute
- 完全过 AI 策略引擎
- 出口走脱敏规则(密码字段自动
[REDACTED]) - 行数限制(默认 100,可在工具参数指定 limit)
- Redis 危险命令永久拦:
FLUSHALL/FLUSHDB/CONFIG/SHUTDOWN/DEBUG
端口转发联动
数据库凭据可关联 端口转发 隧道:凭据 host 填 localhost:<隧道本地端口>,AI / 人用查询都走 SSH 加密通道。
Reeve 的差异化
Navicat 没有、而 Reeve 立身的能力:
- 写操作走策略引擎 / 审批队列 / 审计;输出脱敏
[REDACTED:...] - 凭据明文前端永不可见;改密走自助重置 + 加密回写
- 连接树节点标「受控」徽标,把安全约束变成可见的能力