数据库重构工具实践总结

        自从看了《持续集成 软件质量改进和风险降低之道》后,对在研发团队内部如何建设一个高效的持续集成平台产生了兴趣。目前已在团队内部引入了Jenkins持续集成工具,已经连续在三个项目中进行了实践。目前持续环境缺少对数据库的持续集成,在做内部培训时,同事介绍了Liquibase工具可以对数据库重构进行管理。对Liquibase做了研究,完成了ant与liuquibase的集成。将学习的心得记录下来,在合适的时机引入到研发流程中。

1、liquibase简介

      Liquibase是一个用于跟踪、管理和应用数据库变化的开源的数据库重构工具。它将所有数据库的变化(包括结构和数据)都保存在XML文件中,便于版本控制。

Liquibase具备如下特性:

 * 不依赖于特定的数据库,目前支持包括Oracle/Sql Server/DB2/MySql/Sybase/PostgreSQL/Caché等12种数据库,这样在数据库的部署和升级环节可帮助应用系统支持多数据库。
     * 提供数据库比较功能,比较结果保存在XML中,基于该XML你可用Liquibase轻松部署或升级数据库。
     * 以XML存储数据库变化,其中以作者和ID唯一标识一个变化(ChangSet),支持数据库变化的合并,因此支持多开发人员同时工作。
     * 在数据库中保存数据库修改历史(DatabaseChangeHistory),在数据库升级时自动跳过已应用的变化(ChangSet)。
     * 提供变化应用的回滚功能,可按时间、数量或标签(tag)回滚已应用的变化。通过这种方式,开发人员可轻易的还原数据库在任何时间点的状态。
     * 可生成数据库修改文档(HTML格式)
     * 提供数据重构的独立的IDE和Eclipse插件


2、liquibase使用步骤

       1)创建变更控制文件db.change.xml

       2)  编写变更集合changeset,changeset支持xml、sql、yaml格式

       3)执行更新命令,将变更记录更新到数据库中


3、liuiqbase最佳实践

       1) 使用树形结构管理变更控制文件

        2)  每个变更集合使用顺序序列号或有意义的名字记录

        3)变更集中编写注释,这将有利于后期回忆和修改、其他人阅读我们的变更

         4) 思考回归。现在还没有理清楚如何使用回归功能。

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页