关键词:SQLDEV Archery 对比、SQL审核平台对比、Archery替代、数据库管理平台选型
引言
如果你搜索"开源 SQL 审核平台",大概率会看到 Archery 和 SQLDEV 这两个名字。
两个产品都解决数据库变更管理的问题,但定位和能力边界差异很大。这篇文章从实际使用角度做一个客观对比,帮你判断哪个更适合你的场景。
声明: 本文由 SQLDEV 团队撰写,我们会尽量客观,但建议你亲自试用后再做决定。
一、产品定位差异
维度 | SQLDEV | Archery |
定位 | 数据库堡垒机(安全管控平台) | SQL 审核查询平台 |
核心能力 | 访问控制 + 审核 + 审计 + 脱敏 | SQL 审核 + 查询 |
技术栈 | Go | Python (Django) |
开源模式 | 社区版免费 + 商业版 | 完全开源 |
简单来说,Archery 聚焦在 SQL 审核和查询这个点上,做得不错。SQLDEV 的覆盖面更广,不只是 SQL 审核,还包括数据库的访问控制、操作审计、数据脱敏、SSH 管理等安全管控能力。
二、核心功能对比
2.1 数据库支持
数据库 | SQLDEV | Archery |
MySQL | ✅ | ✅ |
Oracle | ✅ | ✅(部分) |
PostgreSQL | ✅ | ✅ |
SQL Server | ✅ | ✅ |
Redis | ✅ | ✅ |
MongoDB | ✅ | ✅ |
ClickHouse | ✅ | ✅ |
达梦 | ✅ | ❌ |
人大金仓 | ✅ | ❌ |
GaussDB / openGauss | ✅ | ❌ |
OceanBase | ✅ | ❌ |
TiDB | ✅ | ✅ |
GBase | ✅ | ❌ |
Hive | ✅ | ✅ |
Elasticsearch | ✅ | ❌ |
PolarDB | ✅ | ❌ |
合计 | 30+ | ~10 |
关键差异:国产数据库。 如果你的环境里有达梦、人大金仓、GaussDB、GBase 等信创数据库,Archery 目前不支持,SQLDEV 全部覆盖。
2.2 SQL 审核能力
功能 | SQLDEV | Archery |
MySQL 语法审核 | ✅ 内置引擎 | ✅ 基于 goInception |
自定义审核规则 | ✅ | ✅ |
审核规则模板 | ✅ | ❌ |
多数据库审核 | ✅ | MySQL 为主 |
两者在 MySQL SQL 审核能力上比较接近。SQLDEV 的优势在于对更多数据库类型的审核支持。
2.3 安全管控
功能 | SQLDEV | Archery |
数据库访问控制(堡垒机) | ✅ | ❌ |
SSH 终端管理 | ✅ | ❌ |
高危命令拦截 | ✅ | ❌ |
操作录屏审计 | ✅ | ❌ |
数据脱敏 | ✅ | ❌ |
敏感数据发现(SDDP) | ✅ | ❌ |
操作审计日志 | ✅ | ✅(基础) |
这是最大的差异。 Archery 不具备堡垒机能力,它解决的是"SQL 怎么审核"的问题,但不解决"谁能连数据库、连上后能做什么"的问题。SQLDEV 作为数据库堡垒机,控制的是整个访问链路。
2.4 工单与协作
功能 | SQLDEV | Archery |
SQL 工单审批 | ✅ | ✅ |
自定义审批流程 | ✅ | ✅ |
钉钉通知 | ✅ | ✅ |
企业微信通知 | ✅ | ✅ |
邮件通知 | ✅
| ✅ |
工单审批能力两者都比较完善,这一项打平。
2.5 监控与运维
功能 | SQLDEV | Archery |
数据库监控 | ✅(多数据库) | ❌ |
告警通知 | ✅ | ❌ |
慢查询分析 | ✅ | ✅ |
数据库备份管理 | ✅ | ❌ |
2.6 认证与集成
功能 | SQLDEV | Archery |
LDAP | ✅ | ✅ |
CAS 单点登录 | ✅ | ❌ |
OAuth2 | ✅ | ❌ |
钉钉登录 | ✅ | ✅ |
企业微信登录 | ✅ | ❌ |
OpenAPI | ✅ | ✅ |
三、部署与维护
维度 | SQLDEV | Archery |
部署方式 | 二进制 / Docker / K8s | Docker |
依赖组件 | Redis | MySQL + Redis + Inception + Goinception |
部署难度 | 低(单二进制文件) | 中(多组件编排) |
资源占用 | 低(Go 编译,内存占用小) | 中(Python + Django) |
升级方式 | 替换二进制 / Docker pull | Docker pull |
SQLDEV 用 Go 编写,编译成单个二进制文件,部署非常简单。Archery 基于 Python Django,需要依赖多个外部组件(goInception 等),部署和维护成本相对高一些。
四、适用场景
选 Archery 的情况:
- 团队主要用 MySQL,不涉及国产数据库
- 只需要 SQL 审核和查询功能
- 团队有 Python 开发能力,方便二次开发
- 对数据库访问控制没有强需求
选 SQLDEV 的情况:
- 数据库类型多(尤其涉及国产数据库)
- 需要数据库访问控制(堡垒机能力)
- 有等保合规、数据安全法合规需求
- 需要数据脱敏、SSH 管理等安全能力
- 需要数据库监控告警
- 希望一个平台解决所有数据库管理问题
五、总结
Archery 是一个优秀的 SQL 审核工具,如果你的需求仅限于 MySQL SQL 审核,它完全够用。
但如果你面对的是一个复杂的企业环境——多种数据库共存、有安全合规要求、需要统一管控——SQLDEV 提供了更完整的解决方案。
建议根据自己的实际需求选择。两个产品都支持免费使用,最好的方式是都装一遍,实际体验后再做决定。
SQLDEV 社区版免费下载:https://www.sqldev.info
Archery 项目地址:https://github.com/hhyo/Archery
本文首发于 SQLDEV 官方博客。我们尊重每一个开源项目,对比仅基于公开信息和实际测试。
