Spring Boot项目集成flyway
一、为什么要使用flyway
二、如何使用flyway
2.1 添加依赖(推荐版本)
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-core</artifactId>
<version>5.2.1</version>
</dependency>
2.2添加配置
spring:
# 数据库版本控制
flyway:
enabled: true
# 若连接的数据库非空库,是否初始化
baseline-on-migrate: true
# 是否开启校验(若开启校验,flyway在启动校验失败时会清空数据库中的表和删除表结构)
validate-on-migrate: false
# 默认脚本加载路径:/db/migration
locations: classpath:/db/migration
#存储初始化数据的表名
table: sysmn_flyway_schema_history
2.3 添加初始化文件
- V:版本前缀(若配置中无特殊配置,必须为“V”)
 
- 202007131636:版本号 (新添加的配置文件必须必之前的版本号大)
 
- __ : 双下划线(重点:双下划线)
 
- init:区分标识(init表示初始化数据库表)
 
- .sql :后缀(不可更改)
 
-- sql脚本文件
-- 命名规则 年月日时分__姓名.sql
use rhmp_controller;
CREATE TABLE `test` (
`ID` int(11) NOT NULL AUTO_INCREMENT COMMENT '数据主键ID',
`DATA_VERSION` int(11) NOT NULL DEFAULT '' COMMENT '版本号',
`GMT_CREATE` datetime NOT NULL COMMENT '数据创建时间',
`GMT_MODIFY` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '数据修改时间',
`ORG_CODE` varchar(50) DEFAULT NULL COMMENT '用户所在机构',
`USER_CODE` varchar(255) DEFAULT NULL COMMENT '用户代码',
`USER_NAME` varchar(100) DEFAULT NULL COMMENT '用户姓名',
`USER_CLASS` varchar(100) DEFAULT NULL COMMENT '用户类型',
`PERSON_CODE` varchar(100) DEFAULT NULL COMMENT '服务人员代码',
`LOGIN_NAME` varchar(100) NOT NULL COMMENT '系统用户登录名',
`LOGIN_PWD` varchar(200) NOT NULL COMMENT '登录密码',
`HEAD_PORTRAIT` varchar(1000) DEFAULT NULL COMMENT '用户头像',
`USER_TITLE` varchar(100) DEFAULT NULL COMMENT '用户职称',
`ENABLE_FLAG` varchar(10) DEFAULT '' COMMENT '启用标识 0-未启用 1-启用',
`LOCK_FLAG` varchar(10) DEFAULT '' COMMENT '锁定标识 1-锁定 0-正常',
`PY_CODE` varchar(100) DEFAULT NULL COMMENT '拼音码',
`WB_CODE` varchar(100) DEFAULT NULL COMMENT '五笔码',
`THIRD_CODE` varchar(100) DEFAULT NULL COMMENT '第三方编码',
`LAST_LOGIN_DATE` datetime DEFAULT NULL COMMENT '用户最后登录时间',
`LOGIN_COUNT` int(11) DEFAULT NULL COMMENT '累计登录次数',
`SORT_NO` int(11) DEFAULT '' COMMENT '排序号',
`AUDIT_FLAG` varchar(1) DEFAULT NULL COMMENT '是否需要审核 0:不需要审核 1:需要审核',
`AUDIT_PASS` varchar(1) DEFAULT NULL COMMENT '审核结果 审核标识为1时启用,FD000010,0:未审核1:通过,2:不通过',
`REMARK` varchar(1000) DEFAULT NULL COMMENT '备注(审核不通过时是不通过原因)',
`AUDIT_USER_CODE` varchar(50) DEFAULT NULL COMMENT '审核人CODE',
`AUDIT_TIME` datetime DEFAULT NULL COMMENT '审核时间',
`VALID_TIME` datetime DEFAULT NULL COMMENT '生效时间',
`UNVALID_TIME` datetime DEFAULT NULL COMMENT '失效时间',
`BACK_IMAGE` varchar(255) DEFAULT NULL COMMENT '主题背景图片地址',
`DELETE_FLAG` varchar(1) DEFAULT '' COMMENT '删除标志 1 删除 0 未删除',
`IS_FICTITIOUS` varchar(1) DEFAULT '' COMMENT '是否为虚拟用户FD000018 0-否 1-是',
`STATUS_RELATION` varchar(1) DEFAULT '' COMMENT '是否为医疗机构停用关联的停用FD000018:0-否,1-是',
PRIMARY KEY (`ID`) USING BTREE,
UNIQUE KEY `SYS_USER_IDX1` (`LOGIN_NAME`,`DELETE_FLAG`) USING BTREE,
UNIQUE KEY `UI_SYS_USER` (`USER_CODE`,`DELETE_FLAG`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='系统用户表'; INSERT INTO `test` VALUES (null, 8, '2020-06-01 10:53:56', '2020-06-19 17:19:29', '', '', '机构管理员', '', '', 'admin000006', 'e9cdd7cacf3940e525f283f5fa4fa33a', NULL, NULL, '', '', 'JGGLY', 'SSTGK', NULL, '2020-06-19 17:19:28', NULL, 1, '', '', NULL, NULL, NULL, NULL, NULL, NULL, '', '', '');
INSERT INTO `test` VALUES (null, 9, '2020-05-23 14:24:22', '2020-05-23 15:27:32', '', '', '王xue', '', '', 'wanggx', 'e9cdd7cacf3940e525f283f5fa4fa33a', NULL, '', '', '', 'WXUE', 'GXUE', NULL, NULL, NULL, 11, '', '', NULL, NULL, NULL, '2020-05-23 14:10:08', NULL, 'https://image.baidu.com/search/detail', '', '', '');
INSERT INTO `test` VALUES (null, 9, '2020-05-26 15:42:28', '2020-05-23 17:34:05', '', '', '测试', '', '', 'wgx', 'e9cdd7cacf3940e525f283f5fa4fa33a', 'http://static.ruiyicloud.com.cn/image/big-platform/head-picture/000014/0000141590226435000', '', '', '', 'CS', 'IY', NULL, NULL, NULL, 21, '', '', NULL, NULL, NULL, '2020-05-23 14:26:09', '2020-05-23 15:58:14', NULL, '', '', '');
Spring Boot项目集成flyway的更多相关文章
- [转帖]spring boot项目集成jacoco
		
小试牛刀:spring boot项目集成jacoco 2019-03-28 20:14:36 zyq23333 阅读数 509 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议, ...
 - Spring Boot 项目集成 Alibaba Druid
		
Druid 是一个非常好用的数据库连接池,但是他的好并不止体现在作为一个连接池加快数据访问性能上和连接管理上,他带有一个强大的监控工具:Druid Monitor.不仅可以监控数据源和慢查询,还可以监 ...
 - 【Spring Boot&&Spring Cloud系列】Spring Boot项目集成Swagger UI
		
前言 Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端和文件系统作为服务器以同样的速度来更新.文件的方法,参数和模型紧密集 ...
 - Spring boot项目集成Neo4j
		
第一步,创建Springboot工程 使用Eclipse 创建Maven项目,并修改pom.xml文件为: <?xml version="1.0" encoding=&quo ...
 - Spring boot项目集成Sharding Jdbc
		
环境 jdk:1.8 framework: spring boot, sharding jdbc database: MySQL 搭建步骤 在pom 中加入sharding 依赖 <depend ...
 - Spring Boot 项目集成Redis
		
目录 集成方式 使用Jedis 使用spring-data-redis Redis的安装 绑定配置 获取Redis客户端 Redis工具的编写 使用 集成方式 使用Jedis Jedis是Redis官 ...
 - Spring Boot项目使用Flyway
		
Purpose 开发人员在合作的时候经常遇到以下场景: 1.开发人员A在自己的本地数据库做了一些表结构的改动,并根据这些改动调整了DAO层的代码,然后将代码上传到svn或git等版本控制服务器上.此时 ...
 - spring boot项目集成zuul网关
		
1 zuul简介 Zuul 的官方介绍是 “Zuul is the front door for all requests from devices and web sites to the back ...
 - Spring Boot 项目实战(五)集成 Dubbo
		
一.前言 上篇介绍了 Redis 的集成过程,可用于解决热点数据访问的性能问题.随着业务复杂度的提高,单体应用越来越庞大,就好比一个类的代码行数越来越多,分而治之,切成多个类应该是更好的解决方法,所以 ...
 
随机推荐
- 总结关于Ubuntu 安装 Docker 配置相关问题及解决方法
			
总结关于Ubuntu 安装 Docker 配置相关问题及解决方法 Tomcat 示例 软件镜像(xx安装程序)----运行镜像----产生一个容器(正在运行的软件,运行的xx): 步骤: 1.搜索镜像 ...
 - Nginx同时支持Http和Https
			
现在的网站支持Https几乎是标配功能,Nginx能很好的支持Https功能.下面列举一个配置同时支持Http和Https的功能. 需要注意的是:既然选择使用Https,就是为了保证通信安全,那么就没 ...
 - 前端进阶必读:《JavaScript核心技术开发解密》核心提炼二
			
前言 最近读勒基本关于前端的数据<JavaScript核心技术开发解密>,<webpack从入门到进阶>...这几本书帮助到我更好的理解JS.webpack在前端技术领域中的作 ...
 - JavaScript学习系列博客_22_JavaScript this(上下文对象)
			
this(上下文对象) - 我们每次调用函数时,解析器都会将一个上下文对象作为隐含的参数传递进函数. 使用this来引用上下文对象,根据函数的调用形式不同,this代表的对象也不同.不同的情况: 1. ...
 - Excel提取身份证出生日期②
			
问题场景 从user表中的身份信息中提取用户的出生日期: 以下方法也可适用于提取其他数据,不仅是身份证信息: 以下图中数据都为测试数据,不具备真实性! 场景一 user表中的18位身份证,提取出生日期 ...
 - JavaScript基础语法资料
			
JavaScript基础第01天 1 - 编程语言 1.1 编程 编程: 就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程. 计算机程序: 就是计算机所执行的一系列的 ...
 - CCAI观后
			
暑期和大老板的学生一起学了一暑假的计算机视觉和机器学习,以前只是在京畿范围的学校听到的报告和这阵的学习数量级都不同.当时看到了很多人的报告,忽然发现了做报告应该做的准备实际还有很多. 首先是要有充分的 ...
 - 用 Java 拿下 HTML 分分钟写个小爬虫
			
本文适合有 Java 基础知识的人群 本文作者:HelloGitHub-秦人 HelloGitHub 推出的<讲解开源项目>系列,今天给大家带来一款开源 Java 版一款网页元素解析框架- ...
 - linux 下分别使用pip2、pip3
			
上次切换了Python2和Python3.但是Python3并没有pip,所有在Python3下不能安装包. 下面实现在Python3 下安装pip3 1,首先安装setuptools wget -- ...
 - ES6常用总结(一)
			
let,const let声明变量,const声明常量,两者均为块级作用域 let,const在块级作用域内不允许重复声明 const声明的基本数据类型不可以修改,引用数据类型可以修改.具体看我的另一 ...