Flyway 不会在提供的架构中创建架构版本 table

Flyway doesn't create schema version table in provided schema

我正在使用 flyway 和 spring boot。 2.x.x。我能够成功执行。

但是 flyway 会根据我的用户名生成新的架构,并将 flyway 历史记录 table 写入其中。因为我想在我的架构中。为此,我设置了属性

    flyway.schemas=xyz

但它不会将 table 创建到指定的模式 xyz 中。

将不胜感激。

此行为并非来自 flyway,而是来自底层数据库。

检查此用户是否具有以下权限:

  • Read/Write 此架构中的数据。
  • 在此架构中创建 table。

我相信 FlywayProperties 是从前缀为 spring.flyway

的配置属性中读取的
spring.flyway.schemas=xyz

默认配置文件名为flyway.properties,它应该与pom.xml文件位于同一目录中。编码由 flyway.encoding 指定(默认为 UTF-8)。

flyway.user=databaseUser
flyway.password=databasePassword
flyway.schemas=schemaName

此外,正如@Benoit 评论的那样,用户应该对指定的模式具有适当的访问权限。