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

搭建网站有什么用成都网站建设软件

搭建网站有什么用,成都网站建设软件,广州技术支持 奇亿网站建设,有一个可以做任务的网站1. 为什么需要flyway? 代码可以使用git等工具来做版本控制。同样,数据库也需要一个类似等工具来做DB方面等版本控制。 2. flyway 如何工作? flyway会先查找数据中的历史信息记录表schema history table. 2.1 数据库里面是空的 (1&…

1.  为什么需要flyway?

代码可以使用git等工具来做版本控制。同样,数据库也需要一个类似等工具来做DB方面等版本控制。

2. flyway 如何工作?

flyway会先查找数据中的历史信息记录表schema history table.

2.1 数据库里面是空的

(1)由于数据库为空,因此Flyway找不到该表,于是创建它。于是数据库里面就会多一张默认名称为flyway_schema_history的空表。该表用于跟踪数据库的状态信息。

(2)Flyway立即开始从指定的路径下扫描应用程序中为migrations指定的文件:比如sql文件。 

(3)将扫描到的migration文件按照版本号顺序存储在flyway_schema_history表中。每一个migration被执行一次,flyway_schema_history中的记录就会被更新一次。

       其中:flyway_schema_history的表结构如下表所示:

2.2 数据库已经存在初始状态,如果需要版本升级时,就可以将当前的状态升级到新的版本状态。

(1)Flyway将再次扫描指定的路径下的migrations文件,然后根据flyway_schema_history表中的记录检查当前的migrations文件。 如果它们的版本号小于或等于当前的版本号,则将忽略它们。否则这些文件都是将要执行(待处理pending)的文件,但此时并未开始执行。注意:flyway会计算这些脚本的校验和,然后和数据库记录执行过的脚本比较,如果他们校验和不一致就会报错并停止项目执行

(2)按照版本号将扫描到的文件存到flyway_schema_history表中,并按顺序执行。

  其中表会被更新:

3. fly的相关操作

3.1 Migrate

如果是新增的,之前如果不存在,则直接添加。

表现形式:而不管当前版本如何,执行版本更新操作都是幂等的。

例如:

(1)我们期望升级到版本9,且数据库处于版本5。那么Migrate将依次执行6、7、8和9到migrations。

       (2)我们期望升级到版本9,且数据库的版本为9。那么Migrate不执行任何操作。

3.2 Clean

从配置到schemas中删除所有对象(tables, views, procedures, …)。

3.3 Validate

对已经运行过到migrations和当前有效的migrations进行校验

在执行migration时,The validate mechanism checks if the migration locally still has the same checksum as the migration already executed in the database.会通过校验和(CRC32 for SQL migrations)对数据库中的版本和当前需要升级的版本进行校验。验证机制会检查本地的migration的校验和与数据库中已执行的migration的校验和是否相同。

4. spring-boot中相关配置参数说明:

flyway.baseline-description 执行migration时基准版本的描述.
flyway.baseline-on-migrate 执行当migration时发现目标schema非空,而且带有没有元数据的表时,是否自动执行基准迁移,默认false.
flyway.baseline-version开始执行基准migration时对现有的schema的版本打标签,默认值为1.
flyway.check-location检查migration脚本的位置是否存在,默认false.
flyway.clean-on-validation-error当发现校验和错误时是否自动调用clean,默认false.
flyway.enabled 是否开启flywary,默认true.
flyway.encoding 设置迁移时的编码,默认UTF-8.
flyway.ignore-failed-future-migration 当读取元数据表时是否忽略错误的迁移,默认false.
flyway.init-sqls 当初始化好连接时要执行的SQL.
flyway.locations Migration脚本的位置,默认db/migration.
flyway.out-of-order 是否允许无序的migration,默认false.
flyway.password 目标数据库的密码.
flyway.placeholder-prefix 设置每个placeholder的前缀,默认${.
flyway.placeholder-replacementplaceholders 是否要被替换,默认true.
flyway.placeholder-suffix 设置每个placeholder的后缀,默认}.
flyway.placeholders.[placeholder name] 设置placeholder的value
flyway.schemas 设定需要flywary migration的schema,大小写敏感,默认为连接默认的schema.
flyway.sql-migration-prefix migration 文件的前缀,默认为V.
flyway.sql-migration-separator migration 脚本的文件名分隔符,默认__
flyway.sql-migration-suffix migration脚本的后缀,默认为.sql
flyway.tableflyway使用的元数据表名,默认为schema_version
flyway.target 迁移时使用的目标版本,默认为latest version
flyway.url Migration 使用的JDBC URL,如果没有指定的话,将使用配置的主数据源
flyway.user Migration 数据库的用户名
flyway.validate-on-migrate 执行migration时是否校验,默认为true

参考链接:

1. https://flywaydb.org/documentation/command/baseline

http://www.wooajung.com/news/33842.html

相关文章:

  • 网站推广优化方案模板市场推广方式有哪几种
  • 怎么设计网络营销方案网站优化seo是什么意思
  • 网站建设与维护典型案例漳州seo网站快速排名
  • WordPress网站被恶意登录网络培训心得体会
  • 如何建立动态网站软文推广做得比较好的推广平台
  • 软件下载网站制作手机广告推广软件
  • 半成品代加工接订单平台seo排名培训
  • tp5网站开发逻辑架构百度seo指南
  • 宝安网站建设哪家便宜东莞seo优化排名推广
  • 婚纱摄影网站的设计南召seo快速排名价格
  • 宣威做网站推广的公司网站排名优化服务公司
  • 手机网站抢拍是怎么做的列举五种网络营销模式
  • 设立网站泉州网站seo公司
  • 手机号码定位网站开发最快的新闻发布平台
  • 定制家具网站建设哪里有正规的电商培训班
  • 衡水做阿里巴巴网站最近的新闻热点
  • 网络平台推广员谷歌seo工具
  • 做葡萄牙语网站成都疫情最新消息
  • 莱芜论坛杂谈网站关键词排名优化系统
  • 比较好的网站开发教学网站网站推广的主要方式
  • cnc强力磁盘 东莞网站建设可口可乐网络营销策划方案
  • 山东外贸建站网络公关公司联系方式
  • 工业设计灵感网站新网站怎么做优化
  • 安徽建站公司泉州搜索推广
  • 中信建设有限责任公司官网招聘信息广州百度网站排名优化
  • 文档流程做网站网络优化公司有哪些
  • c 做网站需要什么知识seo推广优势
  • 网站后台ftp替换图片怎么做aso优化排名推广
  • 扬中论坛网官网seo网站优化专家
  • 营销优化型网站怎么做办公软件培训