工作流程
- 应用程序完成数据库连接池的建立后,flyway自动运行
- 初次使用,flyway会创建一个flyway_schema_history表,用于记录sql执行记录
- flyway会扫描项目指定路径(默认classpath: db/migration)下的所有sql脚本,与表中的脚本记录比对,如果不一致会报错停止项目执行
- 校验通过则会根据sql记录的最大版本号,忽略不大于该版本的脚本,按照版本号从小到大逐个执行其余脚本
使用
-
引入依赖
-
配置
-
创建目录及脚本
-
启动项目
相关命令
url="jdbc:mysql://$host:$port/$database"
# 获取目前数据库状态
bash $flyway -user=$user -password=$password -url=$url info
# 删除所有数据库对象
bash $flyway -user=$user -password=$password -url=$url clean
# 对数据库依次应用版本更改,默认在migrate前自动执行validate命令验证已Apply的脚本是否有变更
bash $flyway -user=$user -password=$password -url=$url migrate