如何在特定的Spring配置文件中禁用flyway?

5 浏览
0 Comments

如何在特定的Spring配置文件中禁用flyway?

现在我有一个使用MsSQL服务器的Spring Boot应用程序。我们使用flyway进行迁移。\n我想为测试添加一个额外的配置文件。我想根据实体类生成表,而不是使用flyway。\n我尝试在application.yaml中写入以下内容:\nspring:\n profiles: test\n jpa:\n generate-ddl: true\n datasource:\n url: jdbc:h2:mem:test_db;MODE=MSSQLServer\n username: sa\n password:\n\n但是flyway仍然会启动。

0
0 Comments

在某个特定的Spring配置文件中禁用flyway的方法是,设置属性spring.flyway.enabled=false。根据spring boot 2.x的官方文档,可以在数据迁移属性中找到与flyway相关的许多属性。

问题的出现原因是,可能需要在特定的Spring配置文件中禁用flyway。这可能是因为在某些情况下,不希望进行数据库迁移或数据迁移已经由其他工具完成。为了解决这个问题,可以使用spring.flyway.enabled属性来禁用flyway。

以下是禁用flyway的解决方法:

在特定的Spring配置文件中,找到或创建属性文件(通常是application.properties或application.yml)。

在该文件中,添加或修改属性spring.flyway.enabled=false。

保存文件并重新启动应用程序。

通过上述步骤,即可在特定的Spring配置文件中禁用flyway。这将导致应用程序在启动时不执行数据库迁移。

0
0 Comments

问题的原因是在Spring Boot 2.X中无法使用上述方法禁用flyway,而解决方法是使用另一种方式。在Spring Boot 1.X中,可以使用flyway.enabled属性来禁用flyway,默认情况下该属性值为true。可以通过配置一个特定的profile来禁用flyway,例如application-test.yml。只需在该配置文件中添加以下内容:flyway: enabled: false。如果在通用配置文件中指定了test profile,只需将其添加到通用配置文件的根目录下。如果只需要让flyway不报错某些迁移未应用,可以使用spring.flyway.out-of-order = true

0
0 Comments

如何在特定的Spring配置文件中禁用Flyway?

在Spring Boot 2.0中,禁用Flyway的属性名称已经发生了变化。对于application.properties格式,可以设置以下属性:

spring.flyway.enabled=false

对于application.yml格式,可以设置以下属性:

spring:

flyway:

enabled: false

如果要在特定的配置文件中禁用Flyway,可以将该属性放在与该配置文件相关的属性文件中。例如,如果配置文件名为"abc",可以将该属性放在application-abc.properties文件中。可以查看Spring文档中关于特定配置文件的属性的说明,以了解如何命名这些文件。通常,格式为application-{profileName}.properties。

此外,也可以在application.yml中使用以下格式来禁用Flyway:spring.flyway.enabled: false。如果不起作用,请尝试将'false'用引号括起来。

希望对你有所帮助!

0