【Docker项目实战】使用Docker部署SQLynx数据库管理工具
- 一、SQLynx介绍
- 1.1 SQLynx简介
- 1.2 SQLynx核心特点
- 1.3 SQLynx 三个版本对比
- 二、本次实践规划
- 2.1 本地环境规划
- 2.2 本次实践介绍
- 三、本地环境检查
- 3.1 检查Docker服务状态
- 3.2 检查Docker版本
- 3.3 检查docker compose 版本
- 四、拉取SQLynx镜像
- 五、部署SQLynx服务
- 5.1 创建部署目录
- 5.2 编辑部署文件
- 5.3 创建SQLynx容器
- 5.4 查看SQLynx容器状态
- 5.5 检查SQLynx容器日志
- 六、访问SQLynx服务
- 6.1 访问SQLynx登录页
- 6.2 登录SQLynx
- 七、基本操作
- 7.1 添加数据源
- 7.2 查询数据
- 7.3 运维管理
- 八、总结
一、SQLynx介绍
1.1 SQLynx简介
SQLynx是一款现代化的企业级数据库管理平台,专为开发者、DBA、数据分析师和企业团队设计,提供高效、安全、协作的数据库操作体验。它支持多种主流 SQL 数据库,采用直观的界面和强大的功能,帮助用户轻松完成数据库开发、管理、审计和协作任务。
1.2 SQLynx核心特点
| 特性 | 说明 |
|---|---|
| 多数据库支持 | 支持 MySQL、MariaDB、PostgreSQL、SQLite、ClickHouse 等主流 SQL 数据库 |
| 原生 Web 架构 | 团队版和企业版为纯 Web 应用,无需安装客户端,浏览器即用 |
| 企业级安全 | 支持 HTTPS、LDAP/AD 集成、细粒度权限控制、操作审计 |
| 协同操作 | 多人协作、审批流程、角色管理,适合团队开发 |
| 内部部署(On-Premise) | 企业版支持私有化部署,保障数据安全与合规 |
| 高可用架构 | 企业版支持集群部署、负载均衡、故障转移 |
1.3 SQLynx 三个版本对比
| 功能模块 | 个人版 | 团队版 | 企业版 |
|---|---|---|---|
| 部署方式 | 桌面应用(Windows/macOS/Linux) | 原生 Web(可私有化部署) | 原生 Web(支持私有化部署 + 高可用集群) |
| 用户规模 | 单用户 | ≤ 100 用户 | 高达 1,000,000 用户 |
| 访问方式 | 安装本地客户端 | 浏览器访问(Web) | 浏览器访问(Web) |
| 核心功能 | ✅ SQL 查询、表管理、数据导入导出、SQL 执行、DDL 比较、样本数据生成等 | ✅ 包含个人版所有功能 | ✅ 包含团队版所有功能 |
| 团队协作 | ❌ 不支持 | ✅ 支持多人协作、项目共享 | ✅ 支持大规模团队协作 |
| 用户管理 | ❌ | ✅ 用户创建、禁用、角色分配 | ✅ 支持 LDAP/AD 集成、SSO |
| 角色与权限 | ❌ | ✅ 自定义角色、数据库权限控制 | ✅ 更细粒度权限策略(行级/列级) |
| 操作审计 | ❌ | ✅ 记录用户操作日志(谁、何时、执行了什么 SQL) | ✅ 完整审计日志,支持合规审查 |
| 审批流程 | ❌ | ❌ | ✅ SQL 执行审批、变更审批(如 DDL) |
| 风险管理 | ❌ | ❌ | ✅ 敏感数据识别、SQL 风险检测(如全表删除) |
| 规则管理 | ❌ | ❌ | ✅ 自定义安全规则(如禁止DROP TABLE) |
| 高可用部署 | ❌ | ❌ | ✅ 支持主从、集群、负载均衡、自动故障转移 |
| 数据传输 | ✅ 支持跨数据库迁移 | ✅ 支持 | ✅ 支持,带监控和调度 |
| 样本数据生成 | ✅ | ✅ | ✅ |
| SQL 文件执行 | ✅ | ✅ | ✅ |
| 表 DDL 比较与备份 | ✅ | ✅ | ✅ |
| 适用场景 | 个人开发、学习、小型项目 | 中小型团队、部门级使用 | 大型企业、金融、政府、高安全要求场景 |
注意:
各版本具体功能以官方发布为准,功能范围及权限策略可能随版本迭代调整,建议参考 SQLynx 官方文档获取最新信息。
二、本次实践规划
2.1 本地环境规划
本次实践为个人测试环境,操作系统版本为 Ubuntu 24.04.2 LTS。
| hostname | IP地址 | 操作系统版本 | Docker版本 | 部署项目 | 备注 |
|---|---|---|---|---|---|
| jeven | 192.168.3.88 | Ubuntu 24.04.2 LTS | 28.3.3 | SQLynx | 部署版本3.7.0 |
2.2 本次实践介绍
1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署SQLynx数据库管理工具。
三、本地环境检查
3.1 检查Docker服务状态
检查Docker服务是否正常运行,确保Docker正常运行。
root@jeven:~# systemctl status docker● docker.service - Docker Application Container Engine Loaded: loaded(/usr/lib/systemd/system/docker.service;enabled;preset: enabled)Active: active(running)since Thu2025-09-1821:50:05 CST;3days ago TriggeredBy: ● docker.socket Docs: https://docs.docker.com Main PID:858(dockerd)Tasks:30Memory:5.2G(peak:5.4G)CPU: 11min54.268s CGroup: /system.slice/docker.service3.2 检查Docker版本
检查Docker版本
root@jeven:~# docker -vDocker version28.3.3, build 980b8563.3 检查docker compose 版本
检查Docker compose版本,确保2.0以上版本。
root@jeven:~# docker -vDocker version28.3.3, build 980b856四、拉取SQLynx镜像
下载SQLynx容器镜像,如下所示:
dockerpull registry.cn-hangzhou.aliyuncs.com/sql_studio/sqlynx:3.7.0五、部署SQLynx服务
5.1 创建部署目录
- 创建部署目录
mkdir-p/data/sqlynx/{data,log}&&cd/data/sqlynx- 设置目录权限
chmod-R777/data/sqlynx5.2 编辑部署文件
使用docker-cli方式部署,可参考以下命令:
dockerrun-d\--restartalways\--namesqlynx\-p18888:18888/tcp\-v/data/sqlynx/log:/apps/usr/sqlstudio/linux/log\-v/data/sqlynx/data:/apps/usr/sqlstudio/linux/data\registry.cn-hangzhou.aliyuncs.com/sql_studio/sqlynx:3.7.0在部署目录下,创建docker-compose.yaml文件,内容如下所示:
vimdocker-compose.yamlversion:'3'services:sqlynx:image:registry.cn-hangzhou.aliyuncs.com/sql_studio/sqlynx:3.7.0container_name:sqlynxrestart:alwaysports:-"18888:18888"volumes:-/data/sqlynx/log:/apps/usr/sqlstudio/linux/log-/data/sqlynx/data:/apps/usr/sqlstudio/linux/data5.3 创建SQLynx容器
执行以下命令,创建SQLynx容器。
dockercompose up-d5.4 查看SQLynx容器状态
检查SQLynx容器运行状态,确保SQLynx容器正常启动。
root@jeven:/data/sqlynx# docker compose psWARN[0000]/data/sqlynx/docker-compose.yaml: the attribute`version`is obsolete, it will be ignored, please remove it to avoid potential confusion NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS sqlynx registry.cn-hangzhou.aliyuncs.com/sql_studio/sqlynx:3.7.0"/bin/bash /apps/sql…"sqlynx8minutes ago Up8minutes0.0.0.0:18888->18888/tcp,[::]:18888->18888/tcp5.5 检查SQLynx容器日志
检查容器运行日志,确保SQLynx服务正常运行。
dockercompose logs六、访问SQLynx服务
6.1 访问SQLynx登录页
浏览器地址:
http://<个人的服务器IP>:18888,访问SQLynx首页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。
6.2 登录SQLynx
默认用户名为admin,密码自行填写,后续在系统设置中修改密码即可。
七、基本操作
7.1 添加数据源
点击数据源模块,新增数据源类型为MySQL。
填写数据库服务相关信息:包括业务系统名称、数据库地址、服务端口号、账号密码登信息。
SSH设置:当数据库位于内网环境而Web服务器具有公网IP时,可通过勾选SSH隧道选项,在SQLynx与Web服务器之间建立一条加密通信通道。该通道可将Web服务器的指定端口数据转发至目标数据库端口,从而安全地实现远程数据库访问与数据传输。
7.2 查询数据
添加数据源完成后,我们刷新数据源列表,可以看到已经成功连接上数据库,可以对数据库进行查询等操作。
7.3 运维管理
在运维管理模块中,我们看到会话管理,如下所示:
八、总结
本次实践通过Docker成功部署SQLynx,验证了其在容器化环境中的高效性与稳定性,显著简化了数据库管理工具的部署流程。借助Docker Compose实现一键式编排,配置清晰、维护便捷,有效降低了多环境部署的复杂度。SQLynx的Web界面提供直观的多数据库管理能力,支持MySQL、PostgreSQL等主流数据库,操作流畅且功能完备。该方案不仅适用于开发测试场景,更能满足企业级数据治理对安全、协同与高可用性的严苛要求,具备显著的实用价值与推广潜力。