GitHub 趋势 · 第 63 期

它把 90+ 个数据库写进第一屏,把三档实现方式写在子目录里

#数据库客户端#MCP#驱动分层

先给结论。DBX 的 90+ 个数据库不是同一件事说了 90 遍,而是三档难度完全不同的「装上」方式:原生 Go/Rust Agent、多数要走 Java/JDBC 的那一批、以及由数据库厂商许可说了算的专有驱动。真正会拦住你的两件事都不在第一屏 —— MCP 那条通道不捆绑 JRE,也不捆绑任何专有驱动;而放驱动源码的 agents/ 目录,README 里写自己是 AGPL-3.0,链接指向的却是仓库根目录那份标准 Apache-2.0 全文。

一、这个位置为什么一直被卡着

数据库客户端的苦恼是固定的:DBeaver 要 Java 运行时、TablePlus 是 Freemium —— 这两句是 DBX 自己 README 里的对照原文,不是本文的评测。真正难受的是长尾:达梦、金仓、openGauss、虚谷、崖山、TDengine 这些库,在通用客户端里要么靠插件、要么靠自备驱动、要么干脆没有。DBX 打的正是这个位置:一个 20 MB 量级的安装包,一口气说支持 90+ 个数据库。

DBX 是个人账号 t8y2 下的开源项目,Apache-2.0,主语言 Rust,仓库创建于 2026-04-29,9 月 11 日刚发 v0.6.11。技术栈写得很直白:Tauri 2 做外壳、Rust 做后端、Vue 3 + shadcn-vue 做前端、CodeMirror 6 做编辑器,数据层用 sqlx / tiberius / redis-rs / mongodb 官方驱动。

二、90+ 是怎么装上的:三档实现

README 用三段话才把 90+ 数完:第一段是 MySQL、PostgreSQL、SQLite、Redis、MongoDB、DuckDB 这些常见库;第二段写着 Agent-based profiles extend DBX to H2, Snowflake, Trino, PrestoSQL, Hive, DB2, Informix, Neo4j, Cassandra, BigQuery, Cloud Spanner, Kylin, SunDB, JDBCX 与自定义 JDBC 连接;第三段又是一长串。真正的分档要翻到 packages/mcp-server/README.md 才看得到 —— Oracle、DB2、Hive、Trino、Snowflake、SAP HANA、达梦在里面被明确归到另一档:走 DBX 的 Java Agent 基础设施,而不是原生驱动。

档位代表前置条件出处
原生 Agent(Go / Rust)cassandra、hive、iotdb、oracle、kingbase、tdengine、xugu、rabbitmq、rocketmq、zookeeper、etcd、etcd2单个可执行文件,不需要 JREagents/README「Multi-JRE Support」
Java / JDBC Agent(多数)达梦 DM8、Oracle、OceanBase-Oracle、DB2、Informix、Hive、Trino、Snowflake、SAP HANA、BigQuery、CachéJRE 21,DBX 会自动下载并管理agents/README 同一节
厂商许可自决的那一批需要专有 JDBC 驱动才能连的库MCP 的原生二进制不捆绑专有驱动与 JRE,要你先在 DBX 里装好 Agent;原文写着可用性取决于已安装驱动与该数据库厂商的许可条款packages/mcp-server/README

三、上手(命令取自 README 原文)

# 桌面端
brew install --cask dbx
scoop bucket add dbx https://github.com/t8y2/scoop-bucket
scoop install dbx
winget install t8y2.dbx

# 自托管 Web 版(多架构镜像,amd64 / arm64)
docker run -d --pull=always --name dbx -p 4224:4224 -v dbx-data:/app/data t8y2/dbx:latest

# 源码构建:Node >= 18 / pnpm / Rust >= 1.88
make

MCP 那条通道是独立的包,装上 DBX 桌面端并不会顺带装上它:

npm install -g @dbx-app/mcp-server

# 客户端配置(.mcp.json)
{
  "mcpServers": {
    "dbx": { "command": "npx", "args": ["-y", "@dbx-app/mcp-server"] }
  }
}

CLI 是另一个包,目前仍是 TypeScript/Node.js 实现:

npm install -g @dbx-app/cli
dbx connections list --json
dbx query local "select 1" --json

上手前值得知道的几件事

最后一段留给仓库里那份 handoff.md。它 10,125 字节,由 opencode 导出,是一份写给下一个接手者的交接文档:当前任务、已完成清单、未完成清单、活动文件列表、阻塞点、关键决定,最后单列一节叫 For the Next AI,开头第一条就是 Read all Active Files before doing anything. —— 里面有两条自曝值得记一笔:这台 Windows 开发机上 Rust 全量编译会因为缺 OpenSSL / Perl 工具链失败或挂住;以及结构比对部署那条 partial DDL 失败路径还没有真机 MySQL / Oracle 的集成测试,当前只靠纯单元测试与 Web 结构化端到端测试覆盖。前者是环境问题,后者是覆盖缺口 —— 一份把缺口写在明处的交接文档,比一份只汇报完成的变更日志更接近真相。

我的判断

适合:需要一个能同时连关系库、Redis、MongoDB、消息队列,又不想为了它装一个 Java 运行时的人;想把数据库接给 Claude Code / Cursor 这类 agent,同时需要一份能明确收紧的权限策略的人;手上有一堆国产库或冷门库,需要 Agent 机制去兜的人。

不适合:要立刻上生产、且不能接受文档与许可声明还在漂移的团队;在意商用许可清晰度、又打算二次分发驱动代码的人;只连 MySQL / PostgreSQL 一个库、用命令行就够的人。

项目:t8y2/dbx · https://github.com/t8y2/dbx · 主页 https://dbxio.com

Star:19,181(GitHub REST API 实测)· Trending Rust 日榜快照 19,206(今日 +259)· Fork 1,859 · 未关闭 issue 1,362 · watcher 90

许可:仓库 Apache-2.0(LICENSE 11,357 字节标准全文);agents/README.md 声明 AGPL-3.0,本轮未在仓库内找到对应许可文件

语言 Rust · 主分支 main · 仓库体积 112,527 KB · 创建 2026-04-29 · 最后推送 2026-09-12

最新版本 v0.6.11(2026-09-11 发布,29 个附件,合计约 1.37 GB);另有 packages-v0.4.86(MCP / CLI 原生二进制)与 agents-v0.2.108(各数据库 Agent)两条独立发布轨道

tag 密度:一页 30 个 tag 从 v0.6.11 排到 v0.5.82

选题依据:全语言日 / 周 / 月三榜逐个剔除已写仓库后无可用新面孔,改抓 python / rust / go / typescript 四个分语言日榜;可用项里动量第一是 dbx(Rust 日榜 +259,19,206 star)。跳过的同榜未写项:vxcontrol/pentagi +250(自主渗透测试,合规敏感)、MHSanaei/3x-ui +66(代理面板)、farion1231/cc-switch +210(132,375 star,本轮动量低于 dbx 19%)、以及 nab138/iloader +50、RyanCodrai/turbovec +91、googleworkspace/cli +66 等已在池中躺了四期且动量数字未变动的存量项。上期文末预告的主题族合集仍欠着,原因见文末。

数据来源:GitHub Trending 官方页面与 GitHub REST API · 抓取时间:2026-09-12 17:02

留言区聊聊:你手上最难受的那个长尾数据库是什么?还有,如果你在用 AI agent 连数据库,权限是交给工具管的,还是靠单独开一个只读账号?

下期照上期说好的办:三榜如果还是零新面孔,就换一个主题族做横向合集(这一期本来排的是合集,四个分语言榜里冒出了动量第一的可用项,所以先把它写掉,合集顺延);如果分语言榜再出现高动量新项目,就回到单项目精读。

#GitHub趋势#数据库客户端#MCP