写点什么

用 LiquiBase 进行数据库迁移与重构

2007 年 5 月 18 日

虽然在软件开发中过程和工具是相互关联的,但数据库开发领域却不像 Java、.NET 和 Ruby 那样总是受到现代 IDE、敏捷过程和构建工具的大量 影响。有时,这种数据库开发与其它过程和工具的无关性导致了同一个软件项目中两组人员间,甚至是一个小组内的两个角色间,使用的过程和与工具不匹配。

近年来,出现了相当多关于如何减少这种不匹配现象的讨论。其中较为突出的是,Scott Ambler 和 Pramod Sadalage 编写的《 Refactoring Databases(重构数据库)》,这本书讲述了通过一系列细粒度、可跟踪的变更使用自动化迁移来开发数据库的方法——也被称为“数据库重构”,使这种数据库开发的理念深入民心。

如果你正在用的不是 Ruby on Rails 的 ActiveRecord,而是在用 Java 的话,那 LiquiBase (前身是 Sundog Database Refactoring Tool )会个是不错的选择:这是一个用于数据库重构和迁移的开源工具。

LiquiBase 能够实现数据库的迁移,你可以通过 Ant 的支持和一个尚在开发的 Maven 插件把它作为你项目构建工程的一部分,或者是通过一个 Servlet 监听器把它作为你的部署过程的一部分( http://www.liquibase.org/manual/latest/servlet_listener_migrator.html )。此外,你还可以通过命令行的方式去直接调用它。LiquiBase 有完善的文档和快速入门指南来帮助快速设置和运行项目。虽然它的测试主要是集中在Oracle、Microsoft SQL Server、MySQL 和PostgreSQL 数据库上,它理论上能与任何JDBC 所支持的数据库相兼容。

LiquiBase 近日发行了一个新版本功能计划,其中包括了数据库重构的IDE 插件,加入对存储过程和View,以及生成测试数据的支持等等。

查看英文原文: Database Migration and Refactoring with LiquiBase


译者简介:陈俊 SpringSide 开 源项目的核心成员,以及中科院软件工程硕士,就职于 Accenture。长期从事 Java EE 应用开发, 热衷于软件体系结构,设计模式,软件过程改进及敏捷开发研究,也喜欢尝试不同的开源技术,一直以来坚持为开源社区的发展贡献自己的力量。为 InfoQ 中文站贡献内容,请邮件至 china-editorial@infoq.com

2007 年 5 月 18 日 01:301944
用户头像

发布了 27 篇内容, 共 88665 次阅读, 收获喜欢 14 次。

关注

评论

发布
暂无评论
发现更多内容

云原生下的灰度体系建设

阿里巴巴云原生

容器 运维 云原生 k8s 监控

差点扛不住了,阿里巴巴支付宝面试 5 轮暴击,终获 Offer

Java架构师迁哥

解除限制!阿里,快手,美团等一线大厂Java内部面试资料开放下载

马小晴

Java 程序员 面试 架构师 Java 25 周年

你敢信?1年半经验,2本学历,Curd背景,美团四面,竟给30K

神奇小汤圆

Java 程序员 架构 面试

太赞了!美团大牛强推的Spring事务笔记,上线仅1天就获赞上万

飞飞JAva

Java 事务spring

重磅!数字人民币接入支付宝!

CECBC区块链专委会

数字人民币

网络攻防学习笔记 Day10

穿过生命散发芬芳

5月日更 网络攻防

Yii2反序列化RCE 新POP链

Thrash

Nginx如何配置Http、Https、WS、WSS?

冰河

nginx 负载均衡 反向代理 https HTTP

SSL / TLS协议解析!什么是SNI? SNI 识别?

明儿

数据工作者必备工作技能:数据治理

博文视点Broadview

Linux下内存不足问题的定位与处理

明儿

Linux 内存 性能调优

边缘计算与云计算的故事

攻城先森

云计算 边缘计算 5月日更

一千座5G工厂的花苞

脑极体

实战排查由于系统负载引起的服务响应异常

Coder的技术之路

高并发 性能调优 线上问题

常见流媒体服务器方案对比分析

liuzhen007

音视频 5月日更

王兴的失败观

池建强

成功 王兴 创业失败启示录

从SPACE矩阵,看5G究竟是否在走向成功?

脑极体

阿里最新春招面经,腾讯/美团/字节1万道Java中高级面试题

周老师

Java 编程 架构 架构程序员 编程面试

阿里专家终于把“大数据+Netty+分布式实战”彻底讲明白了

周老师

Java 编程 程序员 面试 面试架构

强!上线3天获10w浏览量,京东T8纯手码Redis缓存手册,我粉了

飞飞JAva

redis

GreenPlum中的资源队列

数据社

greenplum 5月日更

云原生的进一步具象化

阿里巴巴云原生

大数据 容器 云原生 监控 中间件

网络安全入门之owasp top10漏洞详解

Machine Gun

网络安全 信息安全 渗透测试 WEB安全

机器学习 Machine Learning- 吴恩达Andrew Ng 第5~15课总结 John 易筋 ARTS 打卡 Week 47

John(易筋)

ARTS 打卡计划

工业制造业亟需数字化转型,区块链可以发挥哪些价值?

CECBC区块链专委会

区块链

Java程序员如何在“黄金五年”实现最大价值?

学Java关注我

Java 编程 架构 互联网 计算机

异步编程的几种方式,你知道几种?

xcbeyond

Java 异步编程 5月日更

HTB:Jerry渗透测试

Machine Gun

网络安全 信息安全 渗透测试 WEB安全

如何判断企业赚不赚钱?

石云升

创业 财务分析 5月日更

太好用了!阿里大佬离职带出的“高并发系统设计”学习笔记,成功帮我斩获3个大厂Offer

神奇小汤圆

Java 程序员 架构 计算机

用LiquiBase进行数据库迁移与重构-InfoQ