gpt4 book ai didi

database - Flyway:如何防止开发人员在中央数据库上意外运行迁移?

转载 作者:太空狗 更新时间:2023-10-30 01:57:01 27 4
gpt4 key购买 nike

当我针对(中央)数据库进行调试时,Flyway 可以更新数据库架构。当我的本地应用程序在比部署的应用程序更早的开发分支上运行时,就会发生这种情况。运行本地应用程序将调用中央数据库上的迁移脚本。在最坏的情况下,这当然可能会更新生产数据库。

另一种情况是 2 名开发人员针对 1 个开发数据库和测试数据进行工作。两位开发人员都在研究不同的功能,并且都在修改架构。当一个开发人员更新数据库时,另一个(可能)面临校验和问题,否则会对所做的更改感到惊讶。

我正在考虑解决此类问题的方法。

当然,在 Flyway 之外还有一些解决方案,比如只连接到一次性数据库,或者阻止访问重要的数据库。

我对 Flyway 提供的选项感兴趣。

最佳答案

有一些选项似乎对您的情况很有用。

对于第一个,您可以将 target 属性设置为与您的数据库相同的版本,以防止 Flyway 更新它。

对于第二种情况,有 2 位开发人员同时使用同一个数据库实例,您可以尝试关闭 validateOnMigrate 属性以避免验证失败,或者关闭 ignoreMissingMigrations 以忽略一些开发人员尚未完成的迁移。

Here您可以通过控制台属性找到所有可用的迁移任务。你没有指定,你运行 Flyway,如果它是通过 Spring Boot 完成的,那么并不是所有这些属性都可用,只有其中一些 - 你可以找到它 here在飞路部分下。

但我认为,对于大多数情况,最好的解决方案是在开发和调试期间(如果可能)简单地关闭 Flyway 迁移,并将其用于交付现成的功能。

关于database - Flyway:如何防止开发人员在中央数据库上意外运行迁移?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43370004/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com