Tag: flyway

如何在使用flywaydb时对版本控制存储过程进行版本控制?

我目前有一个使用Microsoft SQL Server后端的Java Web应用程序。 数据库迁移当前由sqlcmd手动完成,它使用:r命令引用存储过程和视图的脚本文件。 这样,每个存储过程都有自己的文件“proc_someprocedure.sql”。迁移由升级脚本“6.1 upgrade.sql”完成,该脚本将proc文件放弃并在其当前版本中重新创建。 我们希望迁移到flyway并让应用程序在部署时迁移它自己的数据库。 但是,我找不到任何简单的方法来为每个存储过程维护单个源代码文件。 如果存储过程发生更改,我需要在版本控制中对V_6_1__change.sql文件和proc_someprocedure.sql文件进行更改。 我正在尝试避免复制/粘贴的sql代码,因为它在过去困扰我们。其他人如何处理这种情况?

用Spring Boot修复飞路

我不太明白在Spring Boot项目中使用Flyway迁移失败时我应该做些什么。 我只是在我的pom.xml添加了Flyway依赖项来激活Flyway。 一切正常。 启动Spring Boot应用程序时,将迁移我的数据库脚本。 但是我的一个脚本出错了,上一次迁移失败了。 现在,当我尝试迁移时,存在“迁移校验和不匹配”。 通常情况下,我会运行mvn flyway:repair ,但由于我使用的是Spring Boot,我不应该使用Flyway Maven插件。 那我该怎么办?

Flyway数据库迁移到多个模式

我为我的多租户应用程序设置了一个迁移脚本。 问题是。 它只为我在参数上指定的第一个租户/架构生成脚本。 这是我的sql脚本 drop table if exists ADMIN_ACCOUNT cascade; drop table if exists PERSON_NAME cascade; drop table if exists USER_ACCOUNT cascade; create table ADMIN_ACCOUNT ( id int8 not null, created_date timestamp, PASSWORD varchar(255), USERNAME varchar(255), membershipType varchar(255), NAME_ID int8, primary key (id) ); create table PERSON_NAME ( id int8 not null, created_date timestamp, FIRST_NAME […]

Spring Boot:Hibernate和Flyway启动顺序

我创建了Spring应用程序。 附加了Pom xml。 它具有这样的配置(如下)和一些用于Flyway数据库迁移工具的db / migration / V1__init.sql。 它有hsqldb内存数据库,它是在应用程序启动后创建的。 创作后很干净。 我希望Hibernate基于实体类创建一个模式,然后Flyway填充表格。 现在,Flyway在创建表之前启动V1__init.sql并抛出exception。 如何更改此订单或我可以执行哪些解决方案? spring.datasource.testWhileIdle = true spring.datasource.validationQuery = SELECT 1 spring.jpa.show-sql = true spring.jpa.hibernate.ddl-auto = create-drop spring.jpa.hibernate.naming-strategy = org.hibernate.cfg.ImprovedNamingStrategy spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.HSQLDialect pom.xml中: org.springframework.boot spring-boot-starter-parent 1.3.3.RELEASE UTF-8 1.8 org.springframework.boot spring-boot-starter-web 1.3.2.RELEASE org.hsqldb hsqldb runtime org.hibernate hibernate-core 4.3.11.Final org.springframework spring-orm 4.2.5.RELEASE org.thymeleaf thymeleaf-spring4 2.1.4.RELEASE net.sourceforge.nekohtml nekohtml […]

使用function分支时如何使用Flyway

我们最近开始使用function分支来处理我们所处理的每个故事。 这些是尽可能独立的,然后我们的项目经理决定哪些故事将构成一个版本。 这意味着我们确实知道故事最初投入生产的确切顺序。 在Flyway有一个标准的处理方法吗? 我已经阅读了FAQ,它讨论了对生产数据库的更改是如何线性的,这是正确的。 但是,我不确定团队成员如何决定在他们的function分支工作时为他们的迁移提供哪些版本号。 当我们在发布之前合并到集成分支和master时,我们还需要手动重命名迁移文件。