一款强大且免费开源的多连接数据库管理工具
大家好,今天给大家分享一款免费开源的跨平台数据库管理工具DbGate
。
DbGate是一款免费开源的跨平台数据库管理工具,支持多种数据库,包括MySQL、PostgreSQL、SQL Server、MongoDB、SQLite等。它可以在Windows、Linux、Mac操作系统上运行,也可以作为Web应用程序使用,为用户提供跨平台的灵活性。
项目介绍
DbGate 是一个跨平台数据库管理器,旨在用户友好且高效,尤其是在同时处理多个数据库时。
它提供了一系列高级功能,包括模式比较、可视化查询设计器、图表可视化以及批量导出和导入功能。
DbGate 遵循 MIT 许可,可免费使用,彰显了其对可访问性和开源协作的承诺。用户可以在线试用,下载适用于 Windows、Linux 或 Mac 的版本,或以 NPM 包或 Docker 映像的形式运行 Web 版本。
特色功能
1. 数据库连接
-
支持连接数据库类型:MySQL、PostgreSQL、Microsoft SQL Server (支持Windows身份验证)、Oracle、MongoDB、SQLite (支持文件拖拽方式快速打开)、Amazon Redshift、CockroachDB、MariaDB
-
支持通过 SSH 隧道的连接和SSL方式
-
支持同时处理多个数据库连接
-
支持每个打开的选项卡(例如查询、表数据、查询设计者)都标有其所属的数据库
- 存储的密码默认加密
- 支持浏览数据库结构
- 支持浏览表、视图、存储过程和函数
- 支持保存数据库连接配置前进行测试连接
2. 数据编辑
- 数据过滤:用户可以直接输入过滤表达式(例如字段值包含的字符子串),或者通过菜单过滤数据。
- 扩展外接列信息:引用的列可以添加到列管理器中的视图中,还允许根据引用的列过滤表。
- 表单视图:当单列数据太长时,可以使用表单视图展示当前列的完整信息。
- 数据编辑器:支持表格数据的编辑。所有更改都不会立即保存到数据库中,首先,您以与 Excel 中类似的方式编辑表格数据,完成后,按 Ctrl+S(或使用上下文菜单中的命令),确认后,更改将保存到数据库。
3. SQL编辑器
- SQL语法高亮
- 代码自动补全
- 连接向导 - 当您精通 SQL 语言,但不记得所有必须连接在一起的表时,可以添加 SQL 连接 加入向导
- SQL 格式化
- 保存SQL到“已保存的查询”选项卡,或保存到磁盘
4. SQL 生成器
DbGate提供的SQL生成器,可以获得生成创建数据库/数据的SQL脚本。SQL生成器支持表(包含外键)的创建、删除、数据插入以及截断脚本,支持视图、存储过程、函数的创建和删除脚本。
5. 数据导入导出
DbGate支持强大的数据导入导出功能,支持CSV、Excel、JSON line、XML、JavaScript脚本等文件格式,可以实现在不同数据库之间的数据复制。
- 数据导出
- 导入Excel文件
- JavaScript 脚本
6. NoSQL 数据库支持
DbGate 对 MongoDB 数据库有广泛的支持。它使用原生的 MongoDB 驱动程序,因此它不像其他支持 MongoDB 的 SQL 数据库工具那样局限于表式视图。
它还支持最流行的键值数据库 Redis。
对于MongoDB,DbGate支持:
-
连接数据库:包括直接连接、使用 SSH 隧道或自定义 MongoDB URL
-
浏览集合数据、表视图和 JSON 视图
-
过滤和排序集合数据,扩展JSON结构
-
MongoDB shell 数据过滤脚本预览
-
导出和导入(到不同的 DB 或 JSON、CSV 或 MS Excel 文件)
-
运行 MongoDB 查询(使用 nodejs MongoDB API 语法)
对于Redis,DbGate支持:
- 连接数据库:包括直接连接、使用 SSH 隧道或自定义 Redis URL
- 通过树状视图浏览keys
- 支持所有的基础key类型,包含streams
- 支持创建、重命名和移除keys
- 支持编辑key对应的内容
- 支持执行redis脚本
- 支持根据redis key生成相关执行脚本
7. 扩展插件
DbGate使用可扩展的插件架构,您可以从yeoman模板创建插件,插件即NPM包,可以发布到NPM库或者从NPM库获取插件。支持的插件类型包括导入/导出格式支持、数据库连接驱动支持等。
详情请查阅,插件开发文档。
8. 其他
- ER图设计:你可以将创建的表生成ER图。
- 保存文件:DbGate允许您将文件保存到内部 DbGate 存储或磁盘(当您使用的不是DbGate网络版本时),保存的文件类型包括:SQL 查询、查询设计、JavaScript 数据脚本、Markdown 页面以及图表。
- 图表:DbGate允许将任何查询结果可视化,支持的图表类型包括柱状图、折线图、饼图,同时DbGate允许自定义颜色或使用随机颜色。
- 地图:在地图上可视化地理数据。
安装使用
该应用程序使用 Node.js、JavaScript 和 Svelte 框架构建。使用 Electron.js 构建桌面应用程序。
支持平台
- Windows
- Windows Portable
- Linux: AppImage, Debian, Snap package,
- Linux ARM
- macOS Intel
- macOS Apple Silicon
- Docker
- NPM package
下载应用,请访问应用程序下载地址。
使用Docker安装自托管应用
从 Docker Hub 存储库拉取映像
docker pull dbgate/dbgate
使用以下命令启动带有 DbGate 的容器
docker run -it --name dbgate-instance --restart always -p <port on host>:3000 dbgate/dbgate
如果您想预先配置连接:
docker run -it --name dbgate-instance --restart always -p <port on host>:3000 -e CONNECTIONS='mssql' -e LABEL_mssql='MS SQL' -e SERVER_mssql='SERVER_IP' -e USER_mssql='USER' -e PASSWORD_mssql='PWD' -e ENGINE_mssql='mssql@dbgate-plugin-mssql' dbgate/dbgate
如果你想使用 Docker Compose 安装它,你可以使用以下代码片段
version: '3'
services:
dbgate:
image: dbgate/dbgate
restart: always
ports:
- 80:3000
volumes:
- dbgate-data:/root/.dbgate
environment:
CONNECTIONS: con1,con2,con3,con4
LABEL_con1: MySql
SERVER_con1: mysql
USER_con1: root
PASSWORD_con1: TEST
PORT_con1: 3306
ENGINE_con1: mysql@dbgate-plugin-mysql
LABEL_con2: Postgres
SERVER_con2: postgres
USER_con2: postgres
PASSWORD_con2: TEST
PORT_con2: 5432
ENGINE_con2: postgres@dbgate-plugin-postgres
LABEL_con3: MongoDB
URL_con3: mongodb://mongo:27017
ENGINE_con3: mongo@dbgate-plugin-mongo
LABEL_con4: SQLite
FILE_con4: /home/jan/feeds.sqlite
ENGINE_con4: sqlite@dbgate-plugin-sqlite
volumes:
dbgate-data:
driver: local
项目地址
https://github.com/dbgate/dbgate