适用于发布数据库更改的团队

数据库迁移
无需恐惧

一次糟糕的迁移可能导致生产宕机。diffray 在部署前 捕获锁定查询、数据丢失风险和缺失的回滚。

Prisma
TypeORM
Knex
Sequelize
Rails Migrations
Django Migrations

会破坏生产的迁移

这些问题会逃过代码审查。但逃不过 diffray。

表锁定

  • 大表上的 ALTER TABLE
  • 添加带默认值的列
  • 不使用 CONCURRENTLY 创建索引

数据库锁定,应用无法使用

数据丢失

  • 没有备份的 DROP COLUMN
  • 更改列类型
  • 截断表

数据永久丢失

长时间运行

  • 回填数百万行
  • 复杂的数据转换
  • 重建索引

部署超时,部分状态

无法回滚

  • 缺少 down 迁移
  • 不可逆操作
  • 依赖数据的更改

出问题时无法撤销

自动安全检查清单

每次迁移都会进行完整的安全审计

回滚脚本存在
无表锁定操作
大表操作使用批处理
索引创建是并发的
无数据破坏性操作
外键有索引

我们能捕获什么

锁定操作

ALTER TABLE、索引创建和其他在执行期间锁定表的操作

数据安全

列删除、类型更改和其他有数据丢失风险的操作

回滚安全

缺失的 down 迁移、不可逆操作、部署风险

常见问题

安全迁移。
安心睡眠。

再也不用在半夜醒来处理"迁移锁定了用户表"的问题。

开始免费试用