我已经在堆栈溢出问题上搜索过这个答案,但是我找不到任何关于这个问题的问题. 我是Liquibase岁的新手,我想学习

  • 为什么是Liquibase
  • 项目中到底什么时候应该使用Liquibase

我知道这是在一个地方实现的,但类似的事情可以通过在某个存储库系统中创建一个简单的SQL个文件并随着时间不断更新来实现.

推荐答案

自管理模式创建文件与Liquibase(或其他schema migration个工具)之间的主要区别在于后者提供模式更改日志(log).这是架构随时间变化的记录.它允许数据库设计人员在模式中指定changes,并支持按需对模式进行编程升级或降级.

还有其他好处,例如:

  • 数据库供应商独立性(这是值得怀疑的,但他们正在try )
  • 自动化文档
  • 数据库架构差异

一种替代工具是flyway.

当您希望或需要在不丢失数据的情况下自动管理架构更新时,您可以 Select 使用架构迁移工具.也就是说,您希望在将系统部署到长期环境(如客户站点或稳定的测试环境)后更改架构.

Database相关问答推荐

如何使用PostgreSQL列出特定数据库的表并按大小排序?

Django Save 方法在try 向表中添加新记录时出错

add_index 到数据模型 - Ruby on Rails 教程

Phonegap如何在android上保存永久数据

授予对具有特定前缀的多个表的权限

如何将 MySQL Workbench 连接到 Amazon RDS?

NoSql DB 和 OO Db 有什么区别?

从 XML 读取数据

如何在 MongoDB 和 PostgreSQL for GIS 之间进行 Select ?

ER图中的一对多关系

恢复数据库备份时出错

B+ 树相对于 BST 的优势?

本地数据库,我需要一些例子

多语言数据库,默认回退

存储并仍然索引加密客户数据的最佳方式是什么?

您最喜欢在 django 中管理数据库迁移的解决方案是什么?

dbvisualizer:在 Select 查询中设置最大行数

如何使用 Entity Framework CF 在父级之前删除子实体?

最小覆盖和功能依赖

以编程方式嵌入 Java h2 数据库