Flyway 是一个开源、跨环境的数据库迁移工具,它强烈主张简单性和约定性而不是配置。java
Flyway 是一个便于多人开发对数据库管理的工具,将sql语句写入文件中,只须要在控制台输入指令就能够完成数据库的修改mysql
参考:Flyway官方文档sql
首先添加maven依赖,若是你使用其余管理工具,请依照官网进行使用数据库
<!--引入flyway插件--> <plugin> <groupId>org.flywaydb</groupId> <artifactId>flyway-maven-plugin</artifactId> <version>5.2.4</version> <configuration> <url>jdbc:mysql://localhost:3306/db_community</url> <user>root</user> <password>root</password> </configuration> <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.6</version> </dependency> </dependencies> </plugin>
你只须要会sql语句的写法便可,将你须要执行的sql写入一个文件,文件命名规则为V1.2__Description.sql
,前面一个大写字母V,接上数字,而后再写两个下划线,中间是你自定义文件名,尽可能作到见名知意,文件以.sql
结尾maven
存放目录为:resources/db/migration
ide
打开idea控制台,输入mvn flyway:migrate
,出现BUILD SUCCESS
即执行成功,即便报错,打印的日志也很清楚,能够很快的找到错误点工具
我在上面的文件写了建立user表的语句,执行后发现数据库额外多了一个flyway_schema_history
表,这张表实际上记录了你操做的信息url
若是我想为user表添加一个bio字段,直接新建一个sql文件,起好名字,写入sql语句,执行命令,切记,不能在上一个文件里直接修改!!!idea
能够看到,真的多了一个字段插件
flyway_schema_history
表结构以下
若是你遇到这样的错误,百度对应版本,修改版本,使数据库和Flyway版本在同一水平
这个错误是因为sql文件名写错了致使的,特别注意是两个下划线!!