Liquibase 使用(全)
聊一个数据库脚本的版本工具 Liquibase,官网在这里 ,初次看到,挺神奇的,数据库脚本也可以有版本管理,同类型的工具还有 flyway 。 开发过程经常会有表结构和变更,让运维来维护的话,通常会有很大的沟通成本,有时在开发方案有问题的时候,提测失败整个项目需要回滚,代码回滚起来是很容易的,通常有备份,但数据库的话就要人工来逐行分析并写出回滚语句,Liquibase 这时候就有用了。 Liquibase 适用场景感觉不多,所以可能有人没听过它的名头; 首先这种自动执行的家伙肯定是不适合于生产环境的,然后在数据量大的时候是不可能用数据库自带的 alter 语句的,一般都是手动创建另一张表,然后用 sql 语句将数据批量复制过去,再者使用容器化也比它好,个人觉得它一般用于开发和测试环境,比较厉害的一个功能是可以比较两个库的差异然后生成补丁包,上线时可以这么玩。 这篇文章说得不错,我是在这篇基本上写的 核心概念 比奇文学网 https://www.biqi.org/ 首先它是用于管理数据库版本的,所以就会有这些概念:版本号,管理的数据,差异比较,版本回滚 它的版本号由开发人员来维护,使用 author + id 管理的数据最小单元为 changeSet ,这个 changeSet 看官网说是可以用 xml,yaml,json,sql 来编写 提交数据,比较差异,版本回滚