当前位置: 首页 > wzjs >正文

微信做淘宝客网站有哪些经典软文案例和扶贫农产品软文

微信做淘宝客网站有哪些,经典软文案例和扶贫农产品软文,北京做网站公司哪家好,安装的字体wordpress一. 什么是Flyway Flyway 是一款开源的数据库迁移工具。它采用简单直观的方式管理数据库变更,通过版本化的迁移脚本确保数据库结构的一致性和可重复性。无论是开发环境、测试环境还是生产环境,Flyway 都能确保数据库变更按照预期顺序执行,避…

一. 什么是Flyway

Flyway 是一款开源的数据库迁移工具。它采用简单直观的方式管理数据库变更,通过版本化的迁移脚本确保数据库结构的一致性和可重复性。无论是开发环境、测试环境还是生产环境,Flyway 都能确保数据库变更按照预期顺序执行,避免手动修改数据库带来的风险。

二. Flyway 原理简介

  1. 识别当前版本:通过flyway_schema_history表检查数据库当前版本。
  2. 比对迁移脚本:将文件系统或类路径中的迁移脚本与已执行的历史记录进行比对。
  3. 执行未应用的脚本:按照版本号顺序执行所有未应用的迁移脚本。
  4. 记录执行结果:将执行成功的脚本信息记录到flyway_schema_history表中。

三.Flyway应用场景

  1. 团队协作开发:确保团队成员使用一致的数据库结构。
  2. CI/CD 流水线:自动化数据库变更,实现环境一致性。
  3. 多环境部署:开发、测试、生产环境使用相同的变更脚本。
  4. 数据库重构:安全地执行大规模数据库重构。
  5. 开源项目维护:方便贡献者同步数据库结构。

四.Spring boot 集成Flyway

1. 添加依赖

<dependency><groupId>org.flywaydb</groupId><artifactId>flyway-mysql</artifactId><version>9.16.3</version>
</dependency>

2.flyway配置:

flyway:# 是否自动执行基准迁移,# 当 baseline-on-migrate 设为 false(这是默认值)时,Flyway 遇到未管理的数据库就会报错,不会自动进行基线操作。# 当 baseline-on-migrate 设为 true 时,如果 Flyway 发现数据库里没有 flyway_schema_history 表(也就是该数据库还没被 Flyway 管理过),它会先执行基线操作,再进行迁移。#基线操作会创建 flyway_schema_history 表,并且记录所有版本低于 baseline-version(默认是 1)的迁移脚本,将它们标记为已执行。baseline-on-migrate: true# baseline的版本号,默认为1.0baseline-version: 1.0# 是否开启flyway,默认true.enabled: true# 设置迁移时的编码,默认UTF-8.encoding: UTF-8# 当读取元数据表时是否忽略错误的迁移,默认false.ignore-failed-future-migration: false# 迁移脚本的位置,默认db/migration.locations: classpath:/flyway# 迁移时是否校验,默认为truevalidate-on-migrate: true# flyway 的 clean 命令会删除指定 schema 下的所有 table, 生产务必禁掉。这个默认值是 false 理论上作为默认配置是不科学的。clean-disabled: true# 验证错误时 是否自动清除数据库 高危操作!clean-on-validation-error: false#配置 Flyway 以允许非顺序迁移out-of-order: true

补充数据库相关的配置:

spring:datasource:dynamic:# 设置默认的数据源或者数据源组,默认值即为 masterprimary: masterdatasource:# 主库数据源master:type: your_connect_pooldriver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/your_databaseusername: your_usernamepassword: your_password

3.取消集成Flyway

当flyway的依赖和配置是在公共配置里,如果某一个微服务不使用数据库,不需要集成Flyway,即可在该微服务的启动类中添加exclude

import org.springframework.boot.autoconfigure.flyway.FlywayAutoConfiguration;@SpringBootApplication(exclude = FlywayAutoConfiguration.class)

4.添加SQL脚本

根据配置locations指定的位置创建sql脚本文件,如:V1__Create_User_Table.sql

注意,迁移脚本的名字必须遵循以下规则:必须是以V字母开头,然后放版本号(小数点有多少个不限制),然后是2个下划线(必须两个下划线),最后接上版本描述,必须以sql作为后缀名。

当微服务执行时,flyway会根据flyway_schema_history中记录的脚本执行情况,执行对应的SQL脚本。 

五.注意事项

1. 不允许对已经执行过的sql脚本文件进行修改,否则会报错。

2. sql脚本编写错误的时候微服务启动会报错。

3.当微服务启动出现报错时,flyway_schema_history已经有对应脚本的执行记录,需要删除flyway_schema_history表中的记录,或者修改sql脚本文件的版本号。

4.出现跳版本的情况,不允许再使用跳过的版本号,否则会报错。

http://www.dtcms.com/wzjs/29410.html

相关文章:

  • 鸭梨网站建设百度热搜的含义
  • 手机游戏网站大全自学seo能找到工作吗
  • 分类信息网站如何优化深圳正规seo
  • 主流网站建设湖南网站seo地址
  • 群晖nas可以做网站佛山企业用seo策略
  • 企业模板网站建设网络营销师证书需要多少钱
  • 美女做羞羞事全过程网站视频号推广
  • 网站seo优化效果自己做网站怎么做
  • 网站不兼容ie6qq刷赞网站推广全网
  • 上海静安做网站多少钱国外广告联盟平台
  • 网站建设的价值是什么网络推广员的日常工作
  • 苏州建站公司网络seo是什么工作
  • 微信 网站建设seo综合查询工具
  • 衡水网站建设推广新手怎么做seo优化
  • 做外贸需要浏览外国网站百度推广费用一年多少钱
  • 那个网站可以找人做设计关键词林俊杰mp3免费下载
  • 东莞整站优化推广公司找火速搜索引擎营销就是seo
  • 做网站常规语言百度爱采购竞价
  • 深圳网站建设 易通鼎自媒体怎么入门
  • 深圳招聘网站哪个好自己建网页
  • 免费做网站公司推荐seo推广是什么工作
  • 外贸网站设计方案接单平台app
  • 做网站要什么颜色模式百度手机助手官网
  • 网站之家查询在哪里找专业推广团队
  • 开发小程序商城的费用刷排名seo
  • 戴尔网站建设目标百度一下百度搜索入口
  • 百度快照网站百度平台商户电话号码
  • 网站的建设论文爱站seo综合查询
  • 内蒙古企业网站制作浏览广告赚钱的平台
  • wordpress 房产模板搜索引擎优化自然排名