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 的集成过程,可用于解决热点数据访问的性能问题.随着业务复杂度的提高,单体应用越来越庞大,就好比一个类的代码行数越来越多,分而治之,切成多个类应该是更好的解决方法,所以 ...
随机推荐
- 【luogu1613】跑路 - 倍增+Floyd
题目描述 小A的工作不仅繁琐,更有苛刻的规定,要求小A每天早上在6:00之前到达公司,否则这个月工资清零.可是小A偏偏又有赖床的坏毛病.于是为了保住自己的工资,小A买了一个十分牛B的空间跑路器,每秒钟 ...
- AS 新安装Android Studio运行项目前报错:Unable to access Android SDK add-on list
新安装Android Studio运行项目前报错:Unable to access Android SDK add-on list AS启动后,会在默认路径下检测是否有Android SDK,如果没有 ...
- 免费API接口记录
用来记录一些无次数限制的免费API接口,主要是聚合数据上和API Store上的一些,还有一些其他的. 手机号码归属地API接口: https://www.juhe.cn/docs/api/id/11 ...
- ls-remote -h -t git://github.com/adobe-webplatform/eve.git 报错问题
npm ERR! Error while executing:npm ERR! D:\开发工具\git\Git\cmd\git.EXE ls-remote -h -t git://github.com ...
- java应用中的日志介绍
日志在应用程序中是非常非常重要的,好的日志信息能有助于我们在程序出现 BUG 时能快速进行定位,并能找出其中的原因. 但是,很多介绍 AOP 的地方都采用日志来作为介绍,实际上日志要采用切面的话是极其 ...
- Jmeter系列(55)- 详解 Throughput Controller 吞吐量控制器
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 简单介绍 自行调整该控制器下的子项的执 ...
- Jmeter 常用函数(1)- 详解 __Random
如果你想查看更多 Jmeter 常用函数可以在这篇文章找找哦 https://www.cnblogs.com/poloyy/p/13291704.html 作用 产生一个随机数 语法格式 ${__Ra ...
- python编程中的并发------协程gevent模块
任务例子:喝水.吃饭动作需要耗时1S 单任务:(耗时20s) for i in range(10): print('a正在喝水') time.sleep(1) print('a正在吃饭') time. ...
- Spring Cloud Alibaba是什么
Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案.此项目包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式 ...
- MySQL 字符类型
字符类型 MySQL提供了多种关于字符存储的类型,但是在大多数情况下我们只使用char和varchar即可 类型 大小 用途 CHAR 0-255字节 定长字符串 VARCHAR 0-65535 字节 ...