Java 使用liquibase迁移数据

Java 使用liquibase迁移数据,java,database,liquibase,Java,Database,Liquibase,我们有两个相同的数据库(比如A和B),不知道是否可以使用liquibase将选择性数据从A迁移到B A是读/写数据库,B是只读数据库。我们已经编写了一个系统,其中用户对a进行更改,然后仅“复制”对B所做的选择性更改 我想知道用liquibase来做这件事是否可能/好主意 我们的想法是: 如果B中不存在新记录,则在B中插入新记录;如果存在,则更新记录 删除B中所有表中的所有数据,并用A中的数据重新填充它们 我们已经使用liquibase来管理对数据库结构的数据库更改 谢谢, 杰克。不,这不是Liq

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

A是读/写数据库,B是只读数据库。我们已经编写了一个系统,其中用户对a进行更改,然后仅“复制”对B所做的选择性更改

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

我们的想法是:

  • 如果B中不存在新记录,则在B中插入新记录;如果存在,则更新记录
  • 删除B中所有表中的所有数据,并用A中的数据重新填充它们
  • 我们已经使用liquibase来管理对数据库结构的数据库更改

    谢谢,
    杰克。

    不,这不是Liquibase的设计目的。Liquibase的主要功能是确保对给定数据库运行changelog文件中定义的变更集。这些变更集可以是数据变更或模式变更,但它们需要在变更日志文件中定义

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


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

    据我所知,Liquibase的目标是迁移模式,而不是数据。相关链接: