Моя проблема заключается в том, что я не могу выполнить миграцию с Java-файла flyway, даже если файлы миграции обнаружены, и те же файлы миграции работают из cmd.
Я уже пытался установить все возможные полезные параметрыЯ нашел в Интернете, чтобы настроить схему, но она по-прежнему придерживается "PUBLIC"
Прежде всего проблема заключается в следующем: (логи из Java Spring)
"2019-07-01 15:06:04.296 INFO 296 --- [ main] o.f.core.internal.command.DbMigrate : Current version of schema "PUBLIC": << Empty Schema >>
2019-07-01 15:06:04.297 INFO 296 --- [ main] o.f.core.internal.command.DbMigrate : Migrating schema "PUBLIC" to version 1 - Create person table
2019-07-01 15:06:04.324 INFO 296 --- [ main] o.f.core.internal.command.DbMigrate : Migrating schema "PUBLIC" to version 2 - Add people
2019-07-01 15:06:04.339 INFO 296 --- [ main] o.f.core.internal.command.DbMigrate : Migrating schema "PUBLIC" to version 3 - Add people2
2019-07-01 15:06:04.356 INFO 296 --- [ main] o.f.core.internal.command.DbMigrate : Successfully applied 3 migrations to schema "PUBLIC" (execution time 00:00.094s)"
Таблицаназывается public , и я также не могу видеть его из MySQL Workbench.
Но если я делаю это из командной строки с миграцией flyway, он изменяет схему с именем td , что я и собираюсь сделать:
"Migrating schema `td` to version 1 - Create person table
Migrating schema `td` to version 2 - Add people
Successfully applied 2 migrations to schema `td` (execution time 00:00.207s)"
Конфигурация flyway для Java:
public static void main(String[] args) {
Flyway flyway = new Flyway();
flyway.setBaselineOnMigrate(true);
flyway.migrate();
SpringApplication.run(TimeReportApplication.class, args);
}
application.properties:
flyway.user=root
flyway.password=root
flyway.url=jdbc:mysql://localhost:3306/td
flyway.schemas=TD
Рабочая конфигурация flyway для командной строки:
flyway.url=jdbc:mysql://localhost:3306/td
flyway.user=root
flyway.password=root
У вас есть предложения, что может пойти не так?