1

我有一个场景,我们正在从Oracle DB 迁移到 Postgres Sql,我知道我可以使用 liquibase maven 插件从 Oracle 模式生成更改日志,并且可以使用它在 Postgres 中创建我的模式。我想知道的是是否也可以使用 liquibase 将数据从 oracle 复制到 postgresql。如果是这样,该怎么做。

任何帮助深表感谢。

4

1 回答 1

1

我不确定您是否可以直接使用 Liquibase changeSet 将数据从一个数据库复制到另一个数据库。

但是你可以使用generateChangeLogwith--diffTypes=data属性。它将在生成的变更集中包含数据。

查看generateChangeLog 文档

–diffTypes - 包含在更改日志中的差异类型列表,以逗号分隔的列表表示:表、视图、列、索引、外键、主键、唯一约束、数据

并查看此示例

liquibase   
        --driver=com.microsoft.sqlserver.jdbc.SQLServerDriver  
        --classpath="C:\\Program Files\\Microsoft JDBC Driver 6.0 for SQL Server\\sqljdbc_6.0\\enu\\jre8"  
        --url="jdbc:sqlserver://localhost:1433;databaseName=AdventureWorks2017;integratedSecurity=false;"
        --changeLogFile="D:\Source\generateChangeLog--PersonSchema.xml"
        --username=liquibase
        --password=liquibase@123
        --logLevel=info
        --defaultSchemaName=dbo
        --diffTypes=data
        generateChangeLog
于 2020-05-12T08:28:41.517 回答