我们目前正在运行Flyway来处理.sql
文件中捆绑在一起的DDL和DML更改。
我们希望单独处理它们(例如,.ddl
和.dml
)并将DDL作为所有者架构运行,将DML作为用户运行。
这样运行Flyway的推荐方法是什么?这是Flyway的典型场景吗?
我们考虑过运行两个Flyway实例(每个实例一个),但我们想我们可能希望能够交错DDL和DML。
答案 0 :(得分:5)
本着KISS和YAGNI的精神,我相信你应该保持原样。无论如何,DML紧密耦合到DDL定义的当前结构。那么为什么要将它们分开并制造不必要的挑战以使它们保持同步?
如果您担心风险,请再想一想。从业务角度来看,DML具有与DDL完全相同的风险。您需要更新数据的时间,您就有权将其销毁。
拥抱简约。