type
status
date
slug
summary
tags
category
icon
password
AI summary
![notion image](https://gulimallcativen.oss-cn-shenzhen.aliyuncs.com/img/85821e9e307a408d99c7acda8c4b0327.png?t=848e2c04-b78e-49db-a84d-00ea8160d21f)
一、使用背景
在Mybatis中对于手工建库与修改表结构是一个比较遭人诟病的一个话题,新项目中使用了flyway来构建及管理数据库版本以方便对数据库表及结构的管理操作。简单得说,修改数据库得表,数据,等操作,都用脚本来统一执行,而不直接操作数据库
二、啥是Flyway?
Flyway是一个简单开源数据库版本控制器(约定大于配置),主要提供migrate、clean、info、validate、baseline、repair等命令。它支持SQL(PL/SQL、T-SQL)方式和Java方式,支持命令行客户端等,还提供一系列的插件支持(Maven、Gradle、SBT、ANT等)。
官网地址Flyway官网
三、springboot整合Flyway
pom文件导入依赖
注意:假设<font color=red>springboot2.0x(版本的)使用5.2.1,</font>版本的就可以了(太高版本不兼容,会报错),springboot1.0x版本更低
application.properties
只需要在resources目录下,把sql文件放到/db/migration下
![notion image](https://gulimallcativen.oss-cn-shenzhen.aliyuncs.com/img/ac68b65b621d45a4aa45a87490439f50.png?t=ab26164b-3987-4e3a-b4e0-2e5d2a0b3633)
四、运行结果
![notion image](https://gulimallcativen.oss-cn-shenzhen.aliyuncs.com/img/1a22bd6670ab4307a16fd8ed1ca45793.png?t=cc1c1297-7c57-451f-b3ab-a97387977781)
<font color=red>
注意:
</font>每运行一次,都会flyway_schema_history表生成一条记录,假设还想执行,只需重新命名sql的名字,进行版本升级,则可以继续执行,假设执行错误,只需删除flyway_schema_history表的那条错误记录。
![notion image](https://gulimallcativen.oss-cn-shenzhen.aliyuncs.com/img/fefe1ddb772d407082da755fdd7b4305.png?t=fab7b4c0-7fc1-4966-bf72-893d76cdc725)
- 作者:IT小舟
- 链接:https://codegym.top/article/flyway%E6%95%B0%E6%8D%AE%E5%BA%93%E8%84%9A%E6%9C%AC
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章