我们从没想过要开发数据库浏览器
我们自己也不敢相信。
三年前,我们发布了 Drizzle ORM 的首个主要版本并开始获得关注。当时我们的主要用户来自 Prisma,他们有两个需求:Relational Queries 语法和本地数据库浏览器。
我们有商业开发经验,平时使用 Beekeeper、Postico 或 TablePlus 就能完成工作,因此多次婉拒,并建议大家使用业界常见工具。但用户非常坚持,我们最终还是动手了。当时我们想,这能花多少时间呢?
于是我们开发了 Drizzle Studio。它是一款现代化数据库浏览器,可以浏览和编辑数据、查看 Schema 并运行 SQL,无需对现有数据库进行额外设置。现在它有五种形态:
| 本地 Studio | 免费 | 在 Drizzle 项目中运行 drizzle-kit studio |
| Drizzle Gateway | 免费 | 在自己的基础设施中自托管 Studio,可部署为 Docker 容器或二进制文件 |
| Chrome 扩展 | 免费 | 直接在供应商控制台中浏览无服务器数据库 |
| Studio 组件 | B2B 服务 | 可嵌入自己产品中的 Studio |
| 桌面应用 | 即将推出 | 无需终端的原生数据库浏览器 |
功能一览
- 浏览数据:支持分页、筛选、多列排序和列顺序调整
- 编辑数据:直接添加、更新和删除行;可原位编辑
json、boolean和enum值 - 复制和粘贴:复制单元格区域、将行复制到剪贴板,或导出为
json、csv、sql - 导入数据:支持
json、csv和sql文件 - 运行 SQL:在 SQL 控制台中使用自动补全、
explain/analyze支持和查询遥测 - 运行 Drizzle 查询:使用 Drizzle runner 执行查询
- 浏览和管理 Schema:包括表、视图、列、索引、外键、策略和权限
实现原理
Drizzle Studio 的核心是一个 UI 组件,用于呈现数据库内容并提供操作数据和 Schema 的基础功能。它使用 TypeScript 编写,因此几乎可以无缝集成到任何环境中:

Drizzle Studio 本地开发版
这是最初的版本,也是 Drizzle Studio 的起点,目前每月有 12 万名用户。它面向本地开发场景,可快速打开指定数据库并管理其中的数据。
随着 Schema 管理功能的推出,我们逐渐从最初的代码优先 Schema 思路转向更传统的数据库浏览器模式,由数据库本身作为事实来源。
本地开发版永久免费,并从你的 drizzle.config.ts 文件读取所需配置。它支持 PostgreSQL、MySQL、SQLite、SingleStore、MSSQL 和 CockroachDB。
安装 drizzle-kit,将其指向配置文件并运行 drizzle-kit studio。drizzle-kit studio 文档介绍了设置步骤、--port、--verbose 和 --host 标志,以及 Safari 和 Brave 默认阻止访问 localhost 时的处理方法。
托管版 Studio 面向本地开发,不适合暴露在远程机器上。如需远程部署,请使用 Drizzle Gateway。
Drizzle Gateway
Drizzle Gateway 是增强版的免费自托管 Drizzle Studio。它以单个 Docker 镜像(或独立二进制文件)的形式运行,可同时连接所有数据库,并像其他容器化应用一样部署在你的基础设施中,例如 VPC 或堡垒机后方,享有相应的安全和运维优势。
与 drizzle-kit studio 不同,Gateway 无需 Drizzle 项目。你可以直接在 UI 中添加数据库连接,将其保存在持久化卷中并与团队共享,还可以使用主密码和每位用户各自的访问码保护访问。
Gateway 最初是一项付费服务。Warhammer 开发者联系了我们后,我们意识到付费造成的使用门槛并不值得,于是最终将它改为免费。目前它在 GitHub 容器注册表中的下载量已达到 35 万次。
# pull latest version
docker pull ghcr.io/drizzle-team/gateway:latest
# persistent volume is required for the configuration file
docker volume create drizzle-gateway
# start the gateway
docker run -d \
--name drizzle-gateway \
--restart always \
-p 4983:4983 \
-e PORT=4983 \
-e MASTERPASS=your_master_password \
-v drizzle-gateway:/app \
ghcr.io/drizzle-team/gateway:latest启动后,可通过 http://localhost:4983 访问 Gateway。它支持 arm 和 amd 架构,并提供 macOS 和 Linux 独立二进制文件。安装选项和更新日志请参阅 gateway.drizzle.team。
Drizzle Studio Chrome 扩展
我们的 Chrome 扩展可以直接在供应商 UI 上显示数据库浏览器,无需本地设置或连接字符串。即使供应商没有官方的数据库浏览方式,只要你每天都在使用其产品,也能通过扩展直接在控制台中浏览数据库。
它支持 PlanetScale、Cloudflare D1 和 Vercel Postgres。

目前每周约有 3300 名用户,看来确实有不少人需要这样的工具。
我们还提供 sqlite.drizzle.studio,可以直接在浏览器中查看 SQLite 文件。
Drizzle Studio 组件
Drizzle Studio Component 是我们面向企业的付费 B2B 服务。它是预打包、完全不依赖框架且安全性有保障的 Drizzle Studio Web 组件,可以嵌入你的 UI,例如 React、Vue、Svelte、VanillaJS 等。
如果你提供 Database as a SaaS 或基于 SQL 的数据型 SaaS 解决方案,它会是一个强大的 UI 组件,能提升产品体验;它也适用于不面向客户的内部场景。
它支持高度定制:你可以先在高级主题平台中预览自定义配色,再与我们联系;还可以选择启用 SQL 查询运行器,我们也能按需添加合作伙伴专属定制。
本地开发版 Studio 永久免费,旨在丰富 Drizzle 生态;而组件版一直是我们可持续收入的主要来源,也为 Drizzle 的开源开发提供了支持,直到 PlanetScale 的变化影响了这一模式。
你可能已经在使用的数据库或智能体平台中见过它:
还有一些公司在内部使用可嵌入的 Drizzle Studio。
发布文章:Neon · SQLite Cloud · Replit · Deno · Create.xyz
感兴趣?
你可以在 npm 上阅读详细介绍:@drizzle-team/studio 只是一个 Markdown 文件,无需安装。也欢迎通过 Twitter 私信我们,或在 Discord #drizzle-studio 频道交流。
Drizzle Studio 桌面应用
它将以原生应用的形式提供 Studio 的全部功能,无需终端,也无需调用 drizzle-kit,打开后即可连接数据库。目前正在开发中,暂时还不能体验。
关注我们的 Twitter,或加入 Discord #drizzle-studio-desktop,了解产品发布消息。
常见问题
Drizzle Studio 是开源的吗?
不是。Drizzle ORM 和 Drizzle Kit 完全开源,但 Studio 并不开源。
Drizzle Studio 本地开发版永久免费,旨在丰富 Drizzle 生态。遗憾的是,将其开源会影响我们提供 B2B 服务并实现商业化的能力。
我可以将 Studio 部署到自己的 VPS 上吗?
可以,这正是 Drizzle Gateway 的用途。托管版 local.drizzle.studio 仅供本地开发使用。
Studio 会将我的数据发送到其他地方吗?
不会。drizzle-kit studio 和 Gateway 都在你的机器或基础设施中建立数据库连接,数据不会离开这些环境。
接下来
我们每月都会发布 Drizzle Studio 更新,可在公告页面关注最新动态。




