我正在评估Flyway并想知道它是否可以检查是否存在任何外部更改?即如果有人在Flyway之外直接对数据库进行更改,我可以抓住它吗?
我尝试过验证和信息,但似乎没有注意到。
答案 0 :(得分:1)
不,它不能。 Flyway希望您通过Flyway对您希望管理的内容(结构,参考数据......)进行所有更改。
答案 1 :(得分:1)
在Redgate,我们支持模式快照的概念。如果您使用SQL Server或Oracle(因为这些是我们最好的支持的数据库),那么您可以在部署后拍摄快照,然后在下次部署时将此工件与目标数据库进行比较,以确保它没有。 t"漂流"。我们的工具还可以输出候选Flyway迁移脚本,以确保Flyway与实际目标一致。如果您对此方法感兴趣,我可以向您发送如何实现此示例的示例脚本。但请记住,这仅适用于Oracle和SQL Server。