如何将Liquibase集成到大型组织的现有CI / CD管道中?

问题描述 投票:1回答:1

我们正在一个非常大的组织中工作,有许多数据库(许多类型),许多模式,许多用户。

  1. LB是否必须使用某些源代码管理(用于锁定文件当组织中存在许多用户并使用同一数据库时,相同的架构,等等)?

  2. 在很大的范围内使用LB的最佳实践是什么组织,并发用户很多?

  3. SQLCL可以是通用的sql格式类型还是可以是xml格式类型?

  4. 是否与SQL Developer集成在一起?我的意思是,假设一个用户通过sql developer更改对象,然后会发生什么?

continuous-integration devops liquibase continuous-deployment
1个回答
0
投票

我们一直都遇到这种类型的问题,在人们掌握了如何自动执行数据库更改之后,下一步通常是将其添加到现有CI / CD工作流程中。

  1. 是的,Liquibase可与任何源代码管理一起使用。大多数用户正在使用吉特但是您可以使用Git,TFS,SVN,CVS ...与Liquibase一起运行,您只需要确保您的脚本在源代码管理中,您很高兴。
  2. 除了第三方的源代码控制工具之外,Liquibase还具有称为“ DATABASECHANGELOG”表的跟踪表,这些表跟踪使用Liquibase部署时应用于数据库的更改。这是有关入门以及Liquibase如何工作的更多信息。 https://www.liquibase.org/get_started/how-lb-works.html
  3. Liquibase还有一个表,它在内部使用了“ DATABASECHANGELOGLOCK”表。该表旨在防止多个Liquibase用户同时运行部署-可能使数据库处于错误状态。一旦完成Liquibase部署(liquibase update命令),“ DATABASECHANGELOGLOCK”将允许下一个Liquibase用户进行部署。
  4. 您可以同时使用SQL和XML格式(甚至可以使用JSON和YAML格式)。
© www.soinside.com 2019 - 2024. All rights reserved.