重要提醒
请勿在生产环境使用, 使用前请备份数据
请勿在生产环境使用, 使用前请备份数据
请勿在生产环境使用, 使用前请备份数据
项目说明
平时用 Claude Code、Cursor 这类 AI 编程助手写代码很爽,但一碰到数据库就容易卡住:
- AI 不知道你库里到底有哪些表、字段、索引
- 你得手动贴表结构、贴 SQL、贴查询结果,来回折腾
如果你也有这些使用起来不顺手, 可以看看这个开源工具DBHub
定位很清晰:在 AI 助手和数据库之间做一层通用网关。它实现了 Model Context Protocol(MCP),让 AI 客户端能用标准方式连接并探索数据库,同时把查询控制在更安全的范围内。
1. DBHub 是什么?
DBHub = MCP 数据库网关。
解决了一个很重要的问题就是AI以前只知道对象字段的数据类型, 但不知道具体数据, 写的代码经常容易有偏差
让 Claude Code、Cursor 等 MCP 客户端,能直接连接、查询、理解你的数据库结构(而不是靠你复制粘贴)。
工作方式可以理解成:
Claude Code / Cursor (MCP 客户端) → DBHub (MCP 服务) → PostgreSQL / MySQL / SQLite ...\
2. 项目信息
为了安全, 请勿在生产环境使用!
- GitHub:https://github.com/bytebase/dbhub 由 Bytebase 团队维护(数据库 DevOps 团队)
- NPM:
@bytebase/dbhub - Docker:
bytebase/dbhub - License:MIT
3. 支持哪些数据库?
常见关系型数据库基本都覆盖了,DSN 直连:
- PostgreSQL:
postgres://user:pass@localhost:5432/dbname - MySQL:
mysql://user:pass@localhost:3306/dbname - MariaDB:
mariadb://user:pass@localhost:3306/dbname - SQL Server:
sqlserver://user:pass@localhost:1433/dbname - SQLite:
sqlite:///path/to/db.sqlite或sqlite::memory:
4. 核心能力:它到底能帮你省什么事?
4.1 让 AI “逛”数据库:结构探索像浏览目录
DBHub 把数据库结构包装成资源 URI,AI 可以逐层探索:
TEXTdb://schemas # 所有 schema
db://schemas/{schema}/tables # 表列表
db://schemas/{schema}/tables/{table} # 表结构
db://schemas/{schema}/tables/{table}/indexes # 索引信息
db://schemas/{schema}/procedures # 存储过程
你可以直接问:
- “这个库有哪些 schema 和表?”
- “orders 表字段是什么?哪个字段有索引?”
- “这几个表可能怎么关联?”
好处
- 新增字段直接Claude Code中就可以完成添加表, 索引等
- 有了数据库信息, 实现效果更好
4.2 安全跑查询:run_query + 校验机制
提供 run_query 工具执行 SQL,并且内置校验机制,默认更偏向安全查询(比如 SELECT),减少误操作风险。
4.3 支持工具:从“会写 SQL”到“写对 SQL”
generate_sql:自然语言 → SQLexecute_sql:执行SQLsearch_objects:把表结构/字段用人话解释清楚(写文档、做交接很省时间)
5. 快速开始(Demo → 接入 Claude Code → 连真实库)
方式一:接入 Claude Code(也是一种启动方式)
把 DBHub 作为 MCP Server 配到 Claude Code 里即可(stdio 模式更常见):
1)先用 Demo 体验:
JSON{
"mcpServers": {
"dbhub": {
"command": "npx",
"args": [
"-y",
"@bytebase/dbhub",
"--transport",
"stdio",
"--demo"
]
}
}
}
2)连接真实数据库(示例 MySQL):
JSON{
"mcpServers": {
"dbhub": {
"command": "npx",
"args": [
"-y",
"@bytebase/dbhub",
"--transport",
"stdio",
"--dsn",
"mysql://user:password@127.0.0.1:3306/dbname"
]
}
}
}
小建议:配置里 --demo 和 --dsn 二选一即可,避免读者照抄混用导致无法启动。
方式二:本地启动
先跑起来再说,最快验证链路:
BASH# 演示模式:内置示例数据库
npx @bytebase/dbhub --demo
如果要连真实库(以 PostgreSQL 为例):
BASHnpx @bytebase/dbhub --transport sse --port 8080 \
--dsn "postgres://user:password@localhost:5432/dbname"
方式三:Docker 启动(更适合服务化)
BASHdocker run --rm --init \
--name dbhub \
--publish 8080:8080 \
bytebase/dbhub \
--transport sse \
--port 8080 \
--dsn "postgres://user:password@host.docker.internal:5432/dbname"
6. 适用场景(你可能马上用得上)
- 在 Cursor 或 Claude Code 里让 AI 直接查开发库,定位字段和关联关系
- 产品/运营提口径,用自然语言让 AI 生成 SQL 并解释结果
- 快速生成数据库结构说明,减少“口口相传式交接”
- 用 demo 模式给新人讲 schema / 索引 / SQL
7. 总结
如果你已经在用 Claude Code、Cursor 辅助开发,DBHub 相当于把 AI 的能力从“代码层”延伸到了“数据层”。 少复制粘贴、少来回切工具、多一点可信的结构理解和可控的查询执行——这就是它的价值。