相信很多文章都介绍了flyway作用原理,这些可以通过官网介绍,各种大V的介绍来了解,本文只是介绍如何快速使用flyway,个人觉得,只有先能部署好flyway,才会对原理感兴趣,毕竟看了一大堆,还是不会就很尴尬。
简单的上手就两步:
一、创建项目、存在的项目则添加依赖
创建一个springboot项目(点上flyway、mysql 、web),当然手动配置也一样;
或则手动添加依赖:
添加依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web-services</artifactId>
</dependency>
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-core</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
二、添加SQL
在:resources/db/migration下放置.sql的脚本
脚本一定遵循以下命名规范
V版本号__脚本名.sql
#1.V要大写
#2.版本号:每个都不同,且一半是n.n.n
#3.两个下划线(_)
#4.脚本名:脚本名跟版本号一样,也得不同
application.yml配置
spring:
flyway:
enabled: true # 是否启用flyway
locations: classpath:db/migration # 脚本位置
# 在迁移时,是否校验脚本,假设V1.0__初始.sql已经迁移过了,在下次启动时会校验该脚本是否有变更过,则抛出异常
validate-on-migrate: true
配置有很多,可以查下官网,或则直接查flyway配置;
这样就行了,每次启动项目,就会进行验证,如果还有新的会进行迁移;
eg:
1.Successfully validated 3 migrations (execution time 00:00.018s):成功验证3个迁移(执行时间00:00.018s)
2.Current version of schema flywaytest01
: 1.0.3:模式’ flywaytest01 '的当前版本:1.0.3
后面有空会在记录下基础篇和实践篇,敬请期待吧