CloudBeaver 26.2.3 介绍与选型指南
CloudBeaver 26.2.3 介绍与选型指南:DBeaver 团队开源 Web 数据库管理台的定位、Java/OSGi+Jetty+GraphQL 架构、CE 与商业版边界、Apache-2.0 许可与版本发布节奏取证,并与 DBeaver 桌面版、phpMyAdmin、Adminer、DbGate 做量化对比给出选型建议。
CloudBeaver 26.2.3 介绍与选型指南
目标:帮读者在动手部署前判断「CloudBeaver 是不是我要的东西」。本篇基于项目官方仓库、官方文档站、Docker Hub 标签与 shields.io 徽章的联网溯源(查询日期 2026-10-25),讲清 CloudBeaver 是什么、由哪些部件组成、CE 与商业版的边界在哪、对服务器有哪些要求,并与 DBeaver 桌面版、phpMyAdmin、Adminer、DbGate 做量化对比。部署、参数与 API 的逐步实测不在本篇展开。
一、环境信息与取材口径
本篇是选型篇,不包含本机部署实测;所有项目事实均来自可公开复核的来源,查询日期统一为 2026-10-25:
- 项目仓库:
https://github.com/dbeaver/cloudbeaver(DBeaver 团队;仓库创建於 2020-04-09,默认分支devel,主要语言 TypeScript) - 最新稳定版:
26.2.3,Docker Hub 上latest与26.2.3两个标签指向同一摘要(sha256:0c875296f85f…,推送时间 2026-10-19) - 许可证:Apache-2.0(仓库
LICENSE文件;shields.io 许可证徽章实测同为Apache-2.0) - 社区规模:GitHub 星标约 5.2k(5202)、复刻 574、开放工单 104(仓库元数据与 shields.io 星标徽章交叉核对)
- 官方文档:
https://dbeaver.com/docs/cloudbeaver/与仓库 Wiki(github.com/dbeaver/cloudbeaver/wiki) - 官方演示站:README 提供在线 Demo(
demo.cloudbeaver.io),可免安装体验界面
说明:版本号、星标与工单数属于随时间变化的数据,读者复核时可能已有更新;本文只对 2026-10-25 这个时间点的取值负责。选型结论不依赖星标的具体数值,而依赖功能边界、许可与运行要求。
二、软件概述
CloudBeaver 是 DBeaver 团队出品的网页版数据库管理台(官方自述 "Cloud Database Manager"):把桌面端 DBeaver 的数据库连接、元数据浏览、SQL 编辑、数据编辑与导出能力搬到浏览器里,部署一次、全队通过浏览器使用,不用给每台电脑装客户端。
它解决的核心问题是「数据库客户端的集中化」:
- 免装客户端:DBA 在服务器上部署一份,同事用浏览器打开即可查库,省去逐台机器安装与升级 DBeaver 的成本。
- 连接集中管控:数据库连接由管理员统一下发(连接模板),账号口令保存在服务端,不落到各人电脑上;人员离场时回收账号即可。
- 权限按角色划分:内置 Admin / User 两类角色(team),管理员可控制谁能建连接、谁能看哪些连接。
- 会话与资源有边界:内置会话过期、登录防爆破、结果集行数上限、并发查询上限等配额,避免一个浏览器标签把数据库打爆。
与「把 DBeaver 桌面版装在跳板机上大家远程桌面用」相比,CloudBeaver 的关键差异是多用户、基于角色的访问控制与浏览器原生体验;与「给每个系统单独做一个查询页面」相比,它是通用工具,支持几十种数据库。
三、核心架构
3.1 服务端组成
CloudBeaver 服务端是一个 Java 应用(官方文档明确其基于 OSGi 框架与若干 Eclipse 组件),主要部件如下:
| 部件 | 作用 | 说明 |
|---|---|---|
| Equinox(OSGi 容器) | 插件加载与模块隔离 | 与 DBeaver 桌面版共用同一套插件体系 |
| Eclipse Platform | 虚拟文件系统与插件管理 | 工作区、项目、资源管理由此而来 |
| Jetty | 内嵌 Web 服务器 | 实测 26.2.3 内嵌 Jetty 12.1.11,默认监听 8978 端口 |
| graphql-java | 前后端通信 API | 全部前端操作走 /api/gql 这一个 GraphQL 端点 |
| DBeaver(无头模式) | 数据库连接与元数据能力 | 官方说明:CloudBeaver 复用 DBeaver 的 "headless" 部分——数据库连接、项目管理等全部底层能力 |
| 前端 | TypeScript 单页应用 | 仓库主语言即 TypeScript,界面完全构建在 GraphQL API 之上 |
发行包内置 OpenJDK(实测 26.2.3 运行时为 JVM 25.0.4.1),不需要单独采购或安装 Java;官方文档明确说明这一点。
💡 技术拓展:数据库客户端的两种交付形态。
形态 代表 特点 适用场景 C/S 桌面客户端 DBeaver、TablePlus、Navicat 装在每台电脑上,直连数据库,功能最全 个人开发、DBA 本机作业 B/S 网页客户端 CloudBeaver、DbGate、phpMyAdmin 服务端部署一次,浏览器访问,连接与权限集中管控 团队共享、内网统一入口、免装环境 两者不是替代关系:桌面版贴近本机工作流,网页版强在集中管控与零安装。CloudBeaver 属于后者;它与 DBeaver 桌面版共享同一套数据库底层,因此连接行为与驱动支持高度一致。
3.2 通信机制
浏览器与服务端之间有两条通道:
- GraphQL over HTTP:所有业务操作(登录、连接管理、SQL 执行、元数据读取)都打到
/api/gql; - WebSocket 长连接:用于实时事件(界面刷新、SSO 完成通知、后台任务进度)。官方文档说明:若网络、代理或防火墙阻断了 WebSocket,界面可能看起来正常但永不刷新,此时服务端回退到 HTTP 长轮询投递事件与任务状态。
这意味着部署在反向代理之后时,代理必须放行 WebSocket(Upgrade 头),否则用户体验会降级为轮询。
3.3 数据与身份
CloudBeaver 自身需要存三类数据:用户与口令哈希、数据库连接定义与凭据、角色与权限。社区版默认把这些存在一个内嵌 H2 数据库里(工作区目录下的 .data/cb.h2v2.dat),官方同时支持把内部库换成 PostgreSQL 等外部数据库。工作区目录因此是唯一的持久化对象——备份它就等于备份了整个平台的配置与连接。
身份方面,CE 内置 local(本地账号口令)认证提供方;SAML / OAuth / OpenID 等单点登录属于商业版能力。
四、功能特性
4.1 数据库连接与浏览
- 多数据库:社区版预下载 18 个驱动(实测 26.2.3 驱动清单),覆盖 ClickHouse、Databend、Db2 LUW、Db2 for IBM i、DuckDB、Firebird、H2 全系列、MariaDB、MySQL、Oracle、PostgreSQL、SQL Server、SQLite、Trino、LibSQL、Apache Kyuubi;管理员还可以追加新驱动。
- 元数据浏览:库、模式、表、视图、序列等按树形展开,支持查看建表 DDL。
- 连接模板:管理员预建连接并授权给角色,普通用户登录即可用,无需知道数据库口令。
4.2 SQL 与数据编辑
- SQL 编辑器:语法高亮、自动补全、多标签页、执行计划查看。
- 数据编辑器:表数据按网格展示,支持行内编辑、过滤、排序、大字段(文本/二进制)预览,预览长度受资源配额约束。
- 结果集保护:默认单条查询结果集上限 10 万行、同一会话并发查询上限 100,防止浏览器端拖垮数据库。
4.3 数据导入导出
- 支持把查询结果或整表导出为 CSV 等格式(服务端异步任务执行,完成后下载文件);
- 导出任务走后台任务队列,界面通过 WebSocket/轮询获得进度。
4.4 管理面
- 用户与角色:本地用户、角色(team)、连接级授权;可开匿名访问(默认开)。
- 安全策略:口令最小长度/复杂度、登录失败防爆破(默认 10 次失败后锁定 300 秒)、会话过期(默认 30 分钟)、会话绑定 IP。
- 可观测:内置日志查看器插件,日志级别用 logback 配置。
4.5 商业版增量(CE 没有的)
官方文档列出的 EE/PRO 能力包括:更多商业数据库驱动(MongoDB、Redis、Cassandra、Snowflake、BigQuery 等百余种)、SSO(SAML、OAuth、OpenID、Azure AD)、反向代理认证、Secret Manager 集成等。选型时先确认目标数据库与认证方式是否在 CE 清单内。
五、版本、许可与发布节奏
| 维度 | 实测/实查结果 | 取证方式 |
|---|---|---|
| 最新稳定版 | 26.2.3(2026-10-19) | Docker Hub 标签,latest 与之同摘要 |
| 许可证 | Apache-2.0 | 仓库 LICENSE、shields.io 徽章 |
| 星标 / 复刻 | 约 5.2k / 574 | shields.io 徽章 + 仓库元数据 |
| 服务端技术栈 | Java(OSGi/Equinox)、Jetty、graphql-java | 官方架构文档 + 运行实例实测 |
| 前端技术栈 | TypeScript 单页应用 | 仓库语言统计 |
| 内嵌运行时 | OpenJDK(实例实测 JVM 25.0.4.1) | 运行实例实测 |
| 内嵌 Web 服务器 | Jetty 12.1.11 | 运行实例启动日志 |
| 发布形态 | Docker 镜像为主,另有 EE 的云市场镜像 | Docker Hub dbeaver/cloudbeaver |
发布节奏(官方 Wiki《CloudBeaver release cycles》):
- 稳定版每 3 个月一个,每年 4 次大更新;
- EA(Early Access)版每 2 周一个,用于提前试用新功能,官方提示 EA 稳定性不如正式版;
- Docker 标签规则:
ea指向最新 EA;latest指向最新稳定;xx.y.z锁定精确版本;xx.y取该小版本系列最新;xx取该大版本系列最新。
从 Docker Hub 标签看 26.2 系列的补丁节奏:26.2.0(2026-08-31)→ 26.2.1(2026-09-21)→ 26.2.2(2026-10-05)→ 26.2.3(2026-10-19),大约每 2–3 周一个补丁。
选型提示:生产环境建议锁定精确版本标签(如
26.2.3),升级前读对应版本的 Release Notes;latest会随新版本发布漂移,不适合写进编排文件。补丁级升级通常平滑,但涉及内部库结构变化时应先备份工作区目录。
六、快速开始(官方最小流程)
官方给出的最小可用流程是一条命令(取自官方文档与 Docker Hub 说明,本篇未重复实测回显;完整实测部署步骤见本站部署篇):
docker run -d --name cloudbeaver -p 8978:8978 \
-v cloudbeaver:/opt/cloudbeaver/workspace \
dbeaver/cloudbeaver:26.2.3
启动后访问 http://localhost:8978。三个容易忽略的点:
- 首次进入是初始化向导:创建管理员账号、决定是否允许匿名访问;也可以用环境变量
CB_SERVER_NAME/CB_ADMIN_NAME/CB_ADMIN_PASSWORD跳过向导自动初始化。 - 工作区必须持久化:用户、连接、权限都在
/opt/cloudbeaver/workspace里,不挂载数据卷则重启即丢。 - 默认端口 8978:对外暴露前建议先想好反代与 HTTPS(服务端支持
forceHttps,也可由前置代理终止 TLS)。
七、适用场景与限制
7.1 适合的场景
- 团队共享的数据库查询入口:DBA 统一下发连接,开发/运营用浏览器只读查询,口令不落个人电脑。
- 内网多库统一管理:一台服务器管 PostgreSQL、MySQL、ClickHouse 等多套库,免装客户端。
- 容器化/K8s 环境的管理面:以镜像形态纳入现有编排,配合反代做 HTTPS 与域名入口。
- 给非技术同事开受控查询:连接模板 + 角色授权 + 结果集行数上限,天然防误伤。
7.2 不适合的场景
- 需要商业数据库的高级支持或 NoSQL:CE 驱动清单只含免费/开源数据库,MongoDB、Redis、Snowflake 等在 EE。
- 需要单点登录:CE 只有本地账号认证,SAML/OAuth 属商业版。
- 需要桌面级的重度功能:ER 图编辑、复杂数据迁移、调试器等 DBeaver 桌面版的深度功能,网页版只覆盖常用子集。
- 多实例水平扩展:官方形态是单实例 + 工作区持久化;多副本共享工作区不是官方支持的部署形态。
- 零运维诉求:它是自托管软件,升级、备份、JVM 内存都要自己管;不想运维可考虑厂商的云托管版本。
八、同类选型对比
网页数据库客户端常见的备选有四类:桌面版 DBeaver(同门对照)、phpMyAdmin(老牌 MySQL 网页管理)、Adminer(单文件 PHP)、DbGate(同样是网页+桌面双形态)。按「形态、许可、数据库覆盖、认证、部署」量化对比(星标与许可均为 shields.io 徽章 2026-10-25 实查):
| 维度 | CloudBeaver CE 26.2.3 | DBeaver 桌面版 | phpMyAdmin | Adminer | DbGate |
|---|---|---|---|---|---|
| 产品定位 | 网页版多库管理台 | 桌面多库客户端 | MySQL/MariaDB 网页管理 | 单文件网页管理 | 网页+桌面多库客户端 |
| 许可证 | Apache-2.0 | Apache-2.0 | GPL-2.0 | GitHub 未自动识别(官方声明 Apache-2.0 / GPL-2.0 双许可) | GPL-3.0 |
| GitHub 星标 | 约 5.2k | 约 52k | 约 8k | 约 7.9k | 约 7.3k |
| 数据库覆盖 | CE 预下载 18 驱动,可追加 | 最全(与 CE 同源 + 商业驱动) | 仅 MySQL/MariaDB | 主打 MySQL 系,插件扩展 | 常见关系库 + MongoDB/Redis |
| 多用户与权限 | 角色/连接授权/匿名开关 | 无(单用户桌面) | 依赖数据库自身账号 | 依赖数据库自身账号 | 基础多用户 |
| SSO | CE 无(EE 支持 SAML/OAuth) | 不适用 | 无 | 无 | 无(社区版) |
| 部署 | 单镜像 + 工作区卷 | 桌面安装包 | PHP + Web 服务器 | 单个 PHP 文件 | 镜像/npm/桌面包 |
| 服务端资源 | JVM,建议堆 256–512MB 起步 | 桌面内存 | PHP,极轻 | PHP,极轻 | Node.js,中等 |
| 数据归属 | 完全自有 | 本机 | 完全自有 | 完全自有 | 完全自有 |
关键差异解读:
- CloudBeaver 与 DBeaver 是同门互补。二者共享数据库底层,但 DBeaver 桌面版面向个人深度作业(52k 星标说明其普及度),CloudBeaver 面向团队集中管控。常见做法是「DBA 用桌面版,团队用 CloudBeaver」。
- phpMyAdmin/Adminer 的强项是轻。一个 PHP 环境就能跑,Adminer 甚至只有一个文件;但它们只覆盖 MySQL 系,且没有独立的用户权限层(直接用数据库账号登录)。多数据库、统一授权场景下不如 CloudBeaver。
- DbGate 是最接近的竞品,同样网页+桌面双形态、同样覆盖多数据库,社区版功能齐全;差异在许可(GPL-3.0 对二次分发更严格)与技术栈(Node.js)。CloudBeaver 胜在 Apache-2.0 的宽松许可与 DBeaver 底层的数据库兼容性积累。
- 许可要提前确认:Apache-2.0(CloudBeaver/DBeaver)商用与二次分发限制最少;GPL-2.0/3.0(phpMyAdmin/DbGate)在对外提供修改版时有开源义务,选型时应让法务确认。
九、结论
如果你的目标是「在自己的服务器上给团队开一个统一的、浏览器可用的数据库查询与管理入口」,并且接受「JVM 服务 + 工作区持久化 + 自己管升级备份」,CloudBeaver CE 26.2.3 是开源方案里底子最稳的一个:Apache-2.0 许可、DBeaver 底层的数据库兼容性、明确的季度发布节奏、完整的多用户与角色授权。
如果你的数据库清单里有 MongoDB/Redis/Snowflake 或必须接 SSO,直接评估商业版;如果只是给一套 MySQL 找个轻量网页管理,phpMyAdmin/Adminer 更省事;如果是个人本机重度使用,DBeaver 桌面版仍是天花板。几者可以共存,不必互斥。
十、参考资料
- CloudBeaver 官方仓库(含 README、LICENSE、Releases):https://github.com/dbeaver/cloudbeaver (查询日期 2026-10-25)
- CloudBeaver 官方文档站:https://dbeaver.com/docs/cloudbeaver/ (查询日期 2026-10-25)
- 官方 Wiki:Server Architecture / Supported databases / Server Configuration / Release cycles 等:https://github.com/dbeaver/cloudbeaver/wiki (查询日期 2026-10-25)
- Docker Hub 镜像与标签:https://hub.docker.com/r/dbeaver/cloudbeaver (查询日期 2026-10-25)
- DBeaver 桌面版仓库:https://github.com/dbeaver/dbeaver (查询日期 2026-10-25)
- phpMyAdmin 仓库:https://github.com/phpmyadmin/phpmyadmin (查询日期 2026-10-25)
- Adminer 仓库与官网:https://github.com/vrana/adminer 、https://www.adminer.org (查询日期 2026-10-25)
- DbGate 仓库:https://github.com/dbgate/dbgate (查询日期 2026-10-25)