关键词:SQL 审核工具、开源 SQL 审核、SQL 审核平台推荐、数据库变更管理工具
引言
SQL 审核已经不是"要不要做"的问题了,是"用什么做"的问题。
市面上开源的 SQL 审核工具不少,但每个的定位和能力不同。这篇文章选了 5 个最主流的工具做横向对比,帮你快速找到适合自己的。
一、选手介绍
工具 | 语言 | Star | 定位 |
Archery | Python | 5k+ | SQL 审核查询平台 |
Yearning | Go + Vue | 8k+ | MySQL SQL 审核平台 |
Bytebase | Go + TypeScript | 10k+ | 数据库 DevOps 平台 |
SQLDEV | Go | - | 数据库堡垒机平台 |
goInception | Go | 1.5k+ | SQL 审核引擎(无 UI) |
goInception 严格来说是引擎不是平台,但它是 Archery 等工具的底层组件,放进来做参考。
二、功能对比
2.1 数据库支持
数据库 | Archery | Yearning | Bytebase | SQLDEV | goInception |
MySQL | ✅ | ✅ | ✅ | ✅ | ✅ |
PostgreSQL | ✅ | ❌ | ✅ | ✅ | ❌ |
Oracle | 部分 | ❌ | ✅ | ✅ | ❌ |
SQL Server | ✅ | ❌ | ❌ | ✅ | ❌ |
Redis | ✅ | ❌ | ❌ | ✅ | ❌ |
MongoDB | ✅ | ❌ | ✅ | ✅ | ❌ |
ClickHouse | ✅ | ❌ | ✅ | ✅ | ❌ |
达梦 | ❌ | ❌ | ❌ | ✅ | ❌ |
人大金仓 | ❌ | ❌ | ❌ | ✅ | ❌ |
GaussDB | ❌ | ❌ | ❌ | ✅ | ❌ |
OceanBase | ❌ | ❌ | ✅ | ✅ | ❌ |
TiDB | ✅ | ❌ | ✅ | ✅ | ❌ |
结论:
- 如果只用 MySQL:Yearning 够了
- 如果用主流数据库:Archery、Bytebase、SQLDEV 都行
- 如果涉及国产数据库:只有 SQLDEV 全覆盖
2.2 SQL 审核能力
功能 | Archery | Yearning | Bytebase | SQLDEV |
语法审核 | ✅ | ✅ | ✅ | ✅ |
自定义规则 | ✅ | ✅ | ✅ | ✅ |
审核规则模板 | ❌ | ❌ | ✅ | ✅ |
在线查询 | ✅ | ✅ | ✅ | ✅ |
慢查询分析 | ✅ | ❌ | ❌ | ✅ |
SQL 优化建议 | ❌ | ❌ | ❌ | ✅(AI) |
2.3 工单与流程
功能 | Archery | Yearning | Bytebase | SQLDEV |
工单审批 | ✅ | ✅ | ✅ | ✅ |
自定义审批流 | ✅ | ✅ | ✅ | ✅ |
钉钉通知 | ✅ | ❌ | ❌ | ✅ |
企微通知 | ✅ | ❌ | ✅ | ✅ |
定时执行 | ✅ | ✅ | ✅ | ✅ |
2.4 安全与合规
功能 | Archery | Yearning | Bytebase | SQLDEV |
访问控制(堡垒机) | ❌ | ❌ | ❌ | ✅ |
数据脱敏 | ❌ | ❌ | ✅ | ✅ |
敏感数据发现 | ❌ | ❌ | ❌ | ✅ |
SSH 终端管理 | ❌ | ❌ | ❌ | ✅ |
操作录屏审计 | ❌ | ❌ | ❌ | ✅ |
高危命令拦截 | ❌ | ❌ | ❌ | ✅ |
操作审计日志 | 基础 | 基础 | ✅ | ✅ |
2.5 部署与运维
维度 | Archery | Yearning | Bytebase | SQLDEV |
部署方式 | Docker | 二进制/Docker
| Docker | 二进制/Docker/K8s |
依赖组件 | MySQL+Redis+goInception | MySQL | 内置 | Redis |
部署难度 | 中 | 低 | 低 | 低 |
资源占用 | 中 | 低 | 中 | 低 |
三、各工具适用场景
Archery
- 团队以 MySQL 为主,兼有少量其他数据库
- 只需要 SQL 审核 + 查询功能
- 团队有 Python 技术栈,方便二次开发
Yearning
- 纯 MySQL 环境
- 需求简单:SQL 审核 + 工单 + 查询
- 追求轻量部署
Bytebase
- 偏 DevOps 方向,希望把数据库变更融入 CI/CD
- 国际化团队(英文界面体验好)
- 有 GitOps 需求
SQLDEV
- 数据库类型多(尤其有国产数据库)
- 需要数据库堡垒机能力(访问控制、SSH 管理)
- 有安全合规要求(等保、数据安全法)
- 需要数据脱敏、敏感数据发现
- 想用一个平台解决所有数据库管理问题
goInception
- 不需要 Web 界面,只需要审核引擎
- 集成到自研的运维系统中
- 仅需 MySQL 审核
四、我的建议
- 小团队、纯 MySQL → Yearning,轻量好用
- 中型团队、多数据库 → Archery 或 SQLDEV
- 有安全合规需求 → SQLDEV,堡垒机+脱敏+审计是刚需
- DevOps/GitOps 方向 → Bytebase
- 自研集成 → goInception 作为引擎
没有最好的工具,只有最适合的工具。建议都装一遍试试,半天就能搞定。
各工具下载地址:
- SQLDEV:https://www.sqldev.info
- Archery:https://github.com/hhyo/Archery
- Yearning:https://github.com/cookieY/Yearning
- Bytebase:https://github.com/bytebase/bytebase
- goInception:https://github.com/hanchuanchuan/goInception
本文首发于 SQLDEV 官方博客。我们尊重每一个开源项目的贡献,对比基于公开信息和实际测试。如有不准确之处欢迎指正。
