【问题标题】:Regarding FlywayDB Issue关于 FlywayDB 问题
【发布时间】:2020-01-16 12:25:20
【问题描述】:

我在本地 macbook pro 中使用 flyway db version 6.0.8 与 MySQL 数据库集成。 我在~/sql 下放置了一个创建表脚本,并使用以下命令进行迁移。但是它没有创建表,它只创建“flyway_schema_history”而不是实际的表。

配置文件:

flyway.user=flyway
flyway.url=jdbc:mysql://127.0.0.1:3306/db

以下是飞行路线日志:-

Flyway Community Edition 6.0.8 by Redgate
Database: jdbc:mysql://127.0.0.1:3306/DB (MySQL 8.0)
Successfully validated 0 migrations (execution time 00:00.005s)
Creating Schema History table `db`.`flyway_schema_history` with baseline ...
Successfully baselined schema with version: 1
Current version of schema `db`: 1
Schema `db` is up to date. No migration necessary.```





【问题讨论】:

  • 迁移脚本到底放在哪里?我认为 Flyway 期望它们位于您应用程序的 jar 文件中。

标签: flyway


【解决方案1】:

Flyway 遵循简单的路径。这就是惯例。 在创建 Flyway 迁移文件甚至定位它时,您必须遵循约定。

例如路径不能是随机文件夹:

还有命名:

文件名由以下部分组成:

前缀:V 表示版本化(可配置),U 表示撤消(可配置),R 表示可重复迁移(可配置)

版本:用点或下划线分隔任意多个部分的版本(不适用于可重复的迁移)

分隔符:__(两个下划线)(可配置)

说明:下划线或空格分隔单词

后缀:.sql(可配置)

资源:https://flywaydb.org/documentation/migrations

【讨论】:

    【解决方案2】:

    如果您使用 -X 参数运行 flyway,它将打印出它正在搜索迁移的位置。

    例如 flyway migrate -X

    这应该可以帮助您确定它在哪里搜索,以及您将迁移文件放在哪里。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-07
      • 2021-11-29
      • 2011-09-22
      相关资源
      最近更新 更多