使用liquibase迁移数据

时间:2014-04-05 15:06:09

标签: java database liquibase

我们有两个相同的数据库(比如A和B),并想知道是否可以使用liquibase将选择性数据从A迁移到B.

A是读/写数据库,B是只读的。我们编写了一个系统,用户可以对A进行更改,然后复制'只对B进行了选择性更改。

我想知道使用liquibase来做这件事是否可能/好主意。

想法是;

  1. 如果不存在则在B中插入新记录,如果
  2. 则更新记录
  3. 删除B中所有表格中的所有数据,并使用A
  4. 中的表格重新填充

    我们已经使用liquibase来管理数据库结构的数据库更改。

    谢谢, 插孔。

1 个答案:

答案 0 :(得分:1)

不,这不是Liquibase的设计目标。 Liquibase的主要功能是确保更改日志文件中定义的changeSets针对给定的数据库运行。这些changeSet可以是数据更改或架构更改,但需要在changelog文件中定义。

Liquibase确实有一些差异功能,但它们是辅助功能,除了填充表格中的所有数据之外,不会尝试比较数据。

由于复制过程是有选择性的,听起来应用程序中需要有一定程度的UI和/或业务逻辑,并且在应用程序中包含实际的复制逻辑可能是最有意义的。