关于现有数据库

时间:2018-01-31 14:09:47

标签: flyway

我想在现有的生产数据库上介绍flyway。我已阅读https://flywaydb.org/documentation/existing但我想跳过“从生产中获取DDL和参考数据提取”这一步骤

让我解释原因:

  • 我计划在DEV中更接近生产数据DB,因此我将采用PROD转储,匿名化客户相关数据并将其置于DEV

当DEV flyway中的PROD具有相同的模式时,将使用它进行迁移。我的方法是使用标志baselineOnMigrate启动flyway,以便自动创建houskeeping表“flyway_schema_history”。

我知道缺点是无法通过flyway从头开始创建数据库,但除此之外应该可以解决。

我使用一些脚本flyway_schema_history进行了测试,到目前为止它看起来不错(“成功”列显示为“1”)

我的问题:

  • 是负校验和吗?
  • 什么时候是校验和否定,什么时候是肯定的?
  • 你觉得这种方法有什么问题吗?

1 个答案:

答案 0 :(得分:0)

您正在谈论DDL(数据定义语言),在同一句话中,您将对现有数据(DML,数据修改语言)进行匿名化。也许你混合了两件不同的东西。

Flyways的主要目标是从头开始迁移您的数据库。这意味着创建,更改和删除表和其他数据库对象。

我建议

  • 从生产数据库中提取DDL并将其添加为V1迁移脚本

  • 为Dev环境处理数据插入和自己的匿名处理。

希望这有帮助