You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Liquibase 4.14.0:能否基于现有变更日志与数据库生成差异变更日志?

用Liquibase 4.14.0生成变更日志与数据库差异的新变更日志

你需要的功能可以通过Liquibase的changelogSync和diffChangeLog命令实现,对应Maven目标也有支持,具体步骤如下:

Liquibase常规命令

  1. 同步现有变更日志状态
    先执行这条命令,让Liquibase将现有变更日志中的所有变更标记为已应用到数据库(避免后续生成重复的变更内容):

    liquibase changelogSync
    

    执行前需确保已配置好数据库连接信息(可通过liquibase.properties文件或命令行参数指定url、username、password等)。

  2. 生成差异变更日志
    执行这条命令对比数据库与现有变更日志的差异,将缺失的对象(比如你提到的第3张表)生成到指定的新变更日志文件中:

    liquibase diffChangeLog --outputFile=src/main/resources/db/changelog/missing_tables_changelog.xml
    

Maven目标

如果用Maven集成Liquibase,对应命令如下:

  1. 同步变更日志状态
    mvn liquibase:changelogSync
    
  2. 生成差异变更日志
    mvn liquibase:diffChangeLog -Dliquibase.outputFile=src/main/resources/db/changelog/missing_tables_changelog.xml
    

注意事项

  • 生成的变更日志建议手动校验,确认生成的SQL逻辑符合预期后,再合并到主变更日志中。
  • 确保Maven的Liquibase插件版本与你使用的Liquibase 4.14.0一致,避免版本兼容问题。

内容的提问来源于stack exchange,提问作者Jonas Menne

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 20:48:19