Mybatis migration使用初探

本文介绍了Mybatis Migration的安装、初始化、数据库迁移相关操作,如bootstrap、new、status、up/down、version和pending。通过实例展示了如何在SpringMVC+Mybatis项目中管理数据库变更,确保持续交付过程中的数据库一致性。
摘要由CSDN通过智能技术生成

持续交付项目中,项目会不断的迭代上线,这是会出现数据库的改动问题。在一个还未上线的项目中,我更改数据库可以使用简单的直接对sql进行更改,但是面对一个已投入使用的系统而言,每次部署都对数据库进行init显得有点不太可能。于是便有了数据库Migration的诞生。

我所在的项目是SpringMVC配合Mybatis的开发框架。作为一个数据库集成框架,Mybatis在使用上还是比较方便的。言归正传,为了项目需要,于是便开始了Mybatis Migration的初探,文章中出现的不妥之处还请大家不吝赐教。

Mybatis Migration 安装

安装过程主要参照Mybatis的官网: http://mybatis.github.io/migrations/index.html,以及Mybatis源代码授权地址: https://github.com/mybatis/migrations,参照github上的README文件可以轻易的完成其安装过程。README文件中所有的Mybatis包可以直接在其Git repo的releases中找到,我选择了3.2.0进行下载安装。安装完成后就可以直接在terminal中运行migrate相关的命令了。

Mybatus Migration 初始化
minggong:migration-test minggong$ migrate init
------------------------------------------------------------------------
-- MyBatis Migrations - init
------------------------------------------------------------------------
Initializing: .
Creating: environments
Creating: scripts
Creating: drivers
Creating: README
Creating: development.properties
Creating: bootstrap.sql
Creating: 20140817132704_create_changelog.sql
Creating: 20140817132705_first_migration.sql
Done!

------------------------------------------------------------------------
-- MyBatis Migrations SUCCESS
-- Total time: 2s
-- Finished at: Sun Aug 17 18:57:05 GMT+05:30 2014
-- Final Memory: 3M/493M
------------------------------------------------------------------------
minggong:migration-test minggong$ ls
README      drivers     environments    scripts

初始化之后的目录下面会自动生成一些和Migration相关的项目文件及目录 README, drivers, environments, scripts。drivers中放置连接数据库需要的jdbc,environments主要放置连接数据库的地址以及授权信息等,scripts目录下则放置数据库相关的sql,init的时候就已经生成了上述显示的create_changelog.sql和first_migration.sql文件。

为了以实例说明问题,本次测试采用了mysql数据库,从mysql官网下载了mysql-connector-java-5.1.32,并对environment的数据库信息进行了简单的配置,配置如下:

## JDBC connection properties.
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/arctic
username=root
password=

这里的arctic是已经存在本地的一个mysql数据库。

Migrate bootstrap
minggong:migration-test minggong$ migrate bootstrap
------------------------------------------------------------------------
-- MyBatis Migrations - bootstrap
------------------------------------------------------------------------
========== Applying: bootstrap.sql =============================================

------------------------------------------------------------------------
-- MyBatis Migrations SUCCESS
-- Total time: 0s
-- Finished at: Sun Aug 17 19:43:29 GMT+05:30 2014
-- Final Memory: 11M/493M
------------------------------------------------------------------------

运行之后,scripts文件中将会生成另外一个bootstrap文件。主要可以进行一些数据库初始化工作。

Migrate new

new命令能够创建新的sql脚本,我们只需要填充数据表结构信息,便可以方便的创建我们所需的数据表

minggong:migration-test minggong$ migrate new "create blog table"
------------------------------------------------------------------------
-- MyBatis Migrations - new
------------------------------------------------------------------------
Creating: 201408171
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值