springBoot 引入flyway
flyway简介Flyway是一个开源数据库迁移工具。与配置相比,它极力主张简单和约定。Flyway 可以独立于应用实现管理并跟踪数据库变更,支持数据库版本自动升级,并且有一套默认的规约,不需要复杂的配置,Migrations 可以写成 SQL 脚本,也可以写在 Java 代码中,不仅支持 Command Line 和 Java API,还支持 Build 构建工具和 Spring Boot 等,
flyway简介
Flyway是一个开源数据库迁移工具。与配置相比,它极力主张简单和约定。
Flyway 可以独立于应用实现管理并跟踪数据库变更,支持数据库版本自动升级,并且有一套默认的规约,不需要复杂的配置,Migrations 可以写成 SQL 脚本,也可以写在 Java 代码中,不仅支持 Command Line 和 Java API,还支持 Build 构建工具和 Spring Boot 等,同时在分布式环境下能够安全可靠地升级数据库,同时也支持失败恢复等。
它仅基于7个基本命令: 迁移, 清理, 信息, 验证, 撤消, 基线和 修复。
为什么使用flyway?
在版本迭代中经常会对数据库的结构或数据进行操作,如果生产数据库忘记对进行迭代操作那就完蛋了,所以经对数据库的操作写入文件中,在部署上线的时候自动执行sql脚本;
如何使用flyway
一、引入flyway
如果使用springboot,可以直接引入,默认
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-core</artifactId>
</dependency>
二、在配置中增加文件目录db,再创建目录migration(注:一定一个一个的创建)
sql文件命名规则(V(默认值)+版本号 +下划线+名字+结束符(.sql))
三、在项目中配置数据库配置
四、启动springBoot项目,会自动执行db.migration中的最后一个版本的sql文件,执行sql语句
启动后会自动创建一张表
五、查看数据库:
1:旧版本生成的表为:schema_version
代码是
2:新版本生成的表为:flyway_schema_history
表结构为
代码是:
使用:每次升级我们只需要安装版本顺序号创建一个新文件,将sql脚本写入这个文件中即可;
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)