DeltaScope 是一个离线优先的 TiDB Schema Change 审核工具,在 DDL 语句到达 TiDB 集群之前分析其风险。它能发现破坏性的 ALTER TABLE 操作、缺少默认值、不兼容的类型变更等数十种风险模式,适用于 CI 流水线、开发者工作流和 AI Agent 会话。
使用 --dialect tidb 传入一条或多条 DDL 语句。DeltaScope 使用 TiDB 兼容语法解析 SQL,评估所有适用规则,返回包含 blocker、warning、notice 的判定结果。离线审核无需数据库连接。
$ deltascope audit --dialect tidb --sql "ALTER TABLE users DROP COLUMN email;"
Verdict: reject
Statements: 1
Blockers: 1
Warnings: 0
Notices: 0
Statement 1: ALTER TABLE
- [blocker] ddl.alter.drop.column: dropping column "email" is a destructive change
连接到 TiDB 实例,使用表统计信息丰富审核结果:
deltascope audit \
--dialect tidb \
--sql "alter table users add column email varchar(255)" \
--host 127.0.0.1 --port 4000 --user root --ask-password --schema app \
--metadata-connect-timeout 5s
# GitHub Actions 示例
- name: Audit TiDB schema changes
run: |
deltascope audit \
--dialect tidb \
--file ./migrations/tidb_schema_change.sql \
--format github-actions \
--fail-on blocker
DeltaScope 也支持 --format sarif(GitHub Code Scanning)和 --format gitlab-codequality(GitLab CI)。
从 CLI、CI、HTTP 服务或 MCP Server(面向 AI Agent)使用同一套审核引擎,同一套策略配置。
--dialect tidb 启用 TiDB 兼容解析。MySQL 和 TiDB 共享同一套规则和集成路径。--config 覆盖。