【问题标题】:Flyway doesn't create schema version table in provided schemaFlyway 不在提供的模式中创建模式版本表
【发布时间】:2019-07-22 17:42:51
【问题描述】:

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

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

    flyway.schemas=xyz

但它没有将该表创建到指定的模式 xyz 中。

我们将不胜感激。

【问题讨论】:

    标签: java spring spring-boot flyway


    【解决方案1】:

    我相信FlywayProperties 是从带有前缀spring.flyway 的配置属性中读取的

    spring.flyway.schemas=xyz
    

    【讨论】:

      【解决方案2】:

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

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

      • 在此架构中读取/写入数据。
      • 在此架构中创建一个表。

      【讨论】:

        【解决方案3】:

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

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

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

        【讨论】:

        • 在这个问题的范围内这是不正确的。作者正在使用 Flyway 插件进行 spring-boot,默认情况下从前缀为 spring.flyway 的属性中读取 flyway 配置。请参阅上面答案中的链接
        猜你喜欢
        • 2021-11-26
        • 2014-10-12
        • 1970-01-01
        • 2021-04-20
        • 2015-04-04
        • 1970-01-01
        • 1970-01-01
        • 2017-09-21
        • 2020-03-14
        相关资源
        最近更新 更多