搜索
您的当前位置:首页玩玩儿Flyway:数据库迁移

玩玩儿Flyway:数据库迁移

时间:2020-11-09 来源:乌哈旅游

数据库迁移 在软件开发中,我们有svn、git这样的版本管理器帮我们管理源代码,我们可以很容的查看我们当前代码的版本,更新新版本代码、回滚到旧版本等等操作。如果我们不使用版本管理器进行源代码管理,维护代码将是一项十分痛苦的工作。 开发过程中,改变

数据库迁移

在软件开发中,我们有svn、git这样的版本管理器帮我们管理源代码,我们可以很容的查看我们当前代码的版本,更新新版本代码、回滚到旧版本等等操作。如果我们不使用版本管理器进行源代码管理,维护代码将是一项十分痛苦的工作。

开发过程中,改变的可能不仅仅是代码本身,随着业务需求的改变、技术设计的改变,我们数据库的schema也可能发生改变,数据库表中的某些值也可能发生改变。如果数据库相关的信息没有“版本管理”会出现什么问题呢?

假设我们项目中,有多个dev同时进行开发,在Build Pipeline上,有分为了Dev、CI、Test、Production这么几个不同的环境:

n块η!zf喀攈E╧yJava中,我们也有一些可选的工具。Flyway就是其中挺不错的一个http://flywaydb.org/

类似Flyway这样的工具基本原理都非常简单,数据库版本的升级都是通过SQL或者Java代码来完成。

每执行一次升级或者更新,数据库中就会把这个操作的版本号记录下来。这样就可以非常容易的判断出,当前数据库处于哪个版本。

使用Flyway

Flyway的官方文档已经做得比较详细了,大家照着做做,一下就明白了。

Flyway First Step: http://flywaydb.org/getstarted/firststeps/api.html

for Java

Top