一尘不染

Liquibase是否支持空运行?

sql

我们有几个数据模式,我们研究了向Liquibase的迁移。(其中一种数据模式已经迁移到Liquibase)。

对我们来说重要的问题是Liquibase是否支持空运行:

  • 我们需要在所有架构上运行数据库更改而无需提交,以确保我们没有问题。
  • 如果成功,则所有数据库更改都将再次通过提交运行。

答案后添加

我阅读了有关updateSQL的文档,但它不能满足“快速运行”的要求。它只是生成SQL(在命令行,Ant任务和Maven插件中)。我将澄清我的问题:

Liquibase是否支持对交易的控制?

我想在执行Liquibase变更日志之前打开事务,并在执行变更日志后回滚事务。当然,我需要验证执行结果。

是否有可能?

添加

如果没有对事务(或空运行)的控制,我们就无法将所有模式迁移到Liquibase。

请帮忙。


阅读 167

收藏
2021-03-10

共1个答案

一尘不染

您可以尝试“
updateSQL”模式,它将连接数据库(检查您的访问权限),获取数据库锁,生成/打印要应用的SQL语句(基于数据库状态和您当前的liquibase更改集),还将打印缺少chageset
id的信息处于db的当前状态并释放db锁定。

2021-03-10