1、对于新数据库,或者说是数据库中不存在表结构的情况,使用flyway网上很多介绍,照着搞就好了。
2、重点说一下对已经存在表结构数据的已有数据库使用flyway需要注意的几个地方。
a、直接使用的话,启动时会报如下错误:
Caused by: org.flywaydb.core.api.FlywayException: Found non-empty schema(s) `test` without schema history table! Use baseline() or set baselineOnMigrate to true to initialize the schema history table.
b、解决方案:设置setBaselineOnMigrate为true。
c、但此时如果有脚本需要启动加载执行的话,脚本的版本号一定要比1大才能执行(注意红色标注),举个例子V1.0__Base_version.sql不会被执行,但V1.1__Base_version.sql就会被执行。