科学工具
科学工具让世界更美好
让世界更美好

数据库管理工具 Beekeeper Studio数据库管理工具 Beekeeper Studio

Beekeeper Studio是一款支持Linux、Mac和Windows系统的跨平台SQL编辑器和数据库管理器,支持在MacOS、Windows和Linux系统上安装运行。

Beekeeper Studio可免费下载,免费版本提供诸多功能,无需注册、登录或提供信用卡信息,Beekeeper Studio的部分高级功能需要支付合理的许可费用才能使用。

支持的数据库

Beekeeper Studio支持多种数据库,部分数据库的支持情况如下表所示:

数据库 支持程度 社区版 付费版 相关链接
PostgreSQL 完全支持 支持 支持 Features
MySQL 完全支持 支持 支持 Features
SQLite 完全支持 支持 支持 Features、Docs
SQL Server 完全支持 支持 支持 Features
Amazon Redshift 完全支持 支持 支持 Features
CockroachDB 完全支持 支持 支持 Features
MariaDB 完全支持 支持 支持 Features
TiDB 完全支持 支持 支持 Features
Google BigQuery 完全支持 支持 支持 Features、Docs
Oracle Database 完全支持 不支持 支持 Features、Docs
Cassandra 完全支持 不支持 支持 Features
Firebird 完全支持 不支持 支持 Features、Docs
LibSQL 完全支持 不支持 支持 Features
ClickHouse 完全支持 不支持 支持 Features、Docs
DuckDB 完全支持 不支持 支持 Features、Docs
SQL Anywhere 完全支持 不支持 支持 Features
MongoDB 完全支持 不支持 支持 Features、Docs
Snowflake 即将支持 不支持 支持 --
Trino / Presto 即将支持 不支持 支持 --
Redis 计划支持 不支持 支持 --
DynamoDB 计划支持 不支持 支持 --

核心功能

• 流畅、快速,使用体验良好 • 真正跨平台,适用于Windows、MacOS和Linux系统 • 具有自动补全功能的SQL查询编辑器,支持语法高亮 • 标签式界面,可进行多任务处理 • 可对表格数据进行排序和筛选,方便查找所需内容 • 实用的键盘快捷键 • 可保存查询以便后续使用 • 查询运行历史记录功能,能找到几天前成功运行的查询 • 出色的深色主题 • 导入/导出功能 • 备份/恢复功能 • 可将数据以JSON格式查看 • 更多其他功能

其他开源SQL编辑器和数据库管理器在功能上往往采用“大杂烩”的方式,添加过多功能导致用户界面杂乱,难以操作。Beekeeper Studio是一款外观精美、开源的SQL工作台,功能强大且易于使用。

开发时,以“使用体验良好”为准则,至少保证Beekeeper Studio快速、操作简单且风格现代,如果新功能会影响这一目标,就会被取消。

访问 https://docs.beekeeperstudio.io/,可获取用户指南、常见问题解答、故障排除技巧等内容。

本地编译和运行

若想通过编写代码改进Beekeeper Studio,在Mac、Linux或Windows系统上的设置过程并不复杂,步骤如下:

1、安装NodeJS 20、NPM和Yarn。

2、分叉Beekeeper Studio仓库(点击此页面右上角的分叉按钮)。

3、检出分叉的仓库:

git clone [email protected]:<your-username>/beekeeper-studio.git beekeeper-studio
cd beekeeper-studio/
yarn install  # 安装依赖

4、启动应用程序:

yarn run electron:serve  # 应用程序将启动

如果出现“error:03000086:digital envelope routines::initialization error”错误,需要更新openssl: • 在Ubuntu/Debian系统:

sudo apt-get update
sudo apt-get upgrade openssl

• 在CentOS/RHEL系统:

sudo yum update openssl

• 在macOS系统(使用Homebrew):

brew update
brew upgrade openssl

Beekeeper Studio有两个入口点:

• “background.js”:这是控制显示窗口等本地事务的电子端代码。

• “main.js”:这是Vue.js应用程序的入口点。从“App.vue”开始,顺着Vue组件的路径就能找到需要的界面。

通常有两个“界面”:

• ConnectionInterface - 连接到数据库

• CoreInterface - 与数据库交互

提交更改的方式:将更改推送到自己的仓库,然后从GitHub页面(当前页面)打开拉取请求。记得添加一些关于更改内容的说明!对于视觉效果的更改,附带动图会更好。

Electron升级注意事项

升级Electron经常会导致构建失败,升级时需要考虑以下几点:

• 是否使用不同的节点版本。例如,Electron-18使用节点14,22使用节点16,因此每个人都需要升级。 • 是否需要升级node-abi以适配Electron版本?构建时会使用node-abi获取预构建的包,需要在root/package.json#resolutions中升级它。 • 是否有任何API被弃用或移除?确保所有与Electron API交互的功能仍能正常工作,例如选择文件、最大化窗口、运行查询等。

发布流程

1、在package.json中更新版本号。

2、用最新的发布说明替换“build/release-notes.md”,并遵循现有格式。

3、运行“git log ..HEAD --oneline | grep 'Merge pull'”找到合并的PR。

4、提交并推送到master分支。

5、创建标签“git tag v”(标签必须以“v”开头)。

6、运行“git push origin ”。

7、等待GitHub上的构建/发布操作完成。

8、发布新版本:

• 在GitHub的发布标签页上找到新的“草稿”发布,编辑说明并发布。

• 登录snapcraft.io,将上传的发布版本拖到每个架构的“稳定”频道。

发布后,最新文档也会发布。同时,还需要将发布说明复制到博客文章中,发布到网站上,在Twitter上发布链接,在LinkedIn上分享,通过SendInBlue发送到邮件列表。