您现在的位置是:主页 > news > 做网站如何躲过网警/品牌策划的五个步骤

做网站如何躲过网警/品牌策划的五个步骤

admin2025/5/10 8:35:50news

简介做网站如何躲过网警,品牌策划的五个步骤,未央免费做网站,wordpress外链图片自动背景 使用flyway进行数据库版本控制。 问题 flyway配置 # 当迁移发现数据库非空且存在没有元数据的表时,自动执行基准迁移,新建schema_version表baseline-on-migrate: true# 开始执行基准迁移时对现有的schema的版本打标签,默认值为1basel…

做网站如何躲过网警,品牌策划的五个步骤,未央免费做网站,wordpress外链图片自动背景 使用flyway进行数据库版本控制。 问题 flyway配置 # 当迁移发现数据库非空且存在没有元数据的表时,自动执行基准迁移,新建schema_version表baseline-on-migrate: true# 开始执行基准迁移时对现有的schema的版本打标签,默认值为1basel…

背景

使用flyway进行数据库版本控制。

问题

flyway配置

    # 当迁移发现数据库非空且存在没有元数据的表时,自动执行基准迁移,新建schema_version表baseline-on-migrate: true# 开始执行基准迁移时对现有的schema的版本打标签,默认值为1baseline-version: 1.0.0

产品初始化部署时,flyway等待pgsql数据库运行后,连接数据库执行初始化脚本。
初始化脚本序号为

  • V1.0.0__init_data.sql
  • V1.0.1__create_test.sql
  • V1.0.2__create_cloud.sql

但是在flyway pod 启动后 创建flyway_schema_history表并自动插入了一条version=1.0.0 and type=BASELINE的记录。导致实际的V1.0.0__init_data.sql表数据不执行,直接执行V1.0.1__create_test.sql脚本了。
多次重装初始化测试一直搞不清楚为什么有时候创建flyway_schema_history表时自动插入 type=BASELINE的记录,有时候不插入。
在这里插入图片描述

原因

经过多次重装初始化慢慢发现,每次自动插入记录的时候,数据库里有其他程序创建的表(有时候在flyway执行之前已经创建完成)。而这个开启基准迁移的参数为true。
baseline-on-migrate: true
表示只有当前数据库中存在其他表时会自动插入 baseline-version: 1.0.0 指定的版本,从而绕过V1.0.0版本的初始化sql。

解决

  1. 其他程序不创建表,交给flyway创建。
  2. 产品初始化部署时,baseline-version 改成比初始化脚本的版本小。这样,所有初始化脚本都能执行。