如何使用 spring 引导生成 liquibase 回滚脚本?

How to generate a liquibase rollback script using spring boot?

我有一个用于创建 table 的简单变更集,并且回滚是相同的。我希望每次启动springboot时都生成一个回滚脚本。有什么帮助吗?非常感谢。

听起来像你这个地方:

<changeSet id="new_table_change" author="the_man">
   <createTable tableName="new_table">
       <column name="id" type="int"/>
   </createTable>
   <rollback>
       <dropTable tableName="new_table"/>
   </rollback>
</changeSet>

有了这个,作为管道的一部分,您始终可以使用以下命令生成回滚脚本:

mvn liquibase:futureRollbackSQL

针对您目前的问题,如果您的环境允许,您可以进行以下操作:

  • 关闭您的应用程序
  • 使用命令选项之一回滚:回滚到日期 (mvn liquibase:rollbackToDateSQL <date_time>) 或步数 (mvn liquibase:rollbackCountSQL <no_of_steps>)
  • 运行 mvn liquibase:futureRollbackSQL 并保存结果
  • 再次启动您的应用程序以再次应用您的更改

liquibase.rollback-file 是spring-boot 可以用来生成回滚脚本的字段。我们需要运行手动回滚。