2016-09-27 3 views
1

В моем приложении Java я установить:пролетный путь базисный не работает, если schema_version таблицы в базе данных

flyway.setBaselineVersionAsString("7") 

однако на совершенно новой базе данных, которая еще не имеют schema_version таблицу пролетный путь не делает рассмотрите настройку базовой линии и выполните все миграции.

Есть ли способ заставить создание таблицы schema_version перед началом миграции, поскольку я попытался создать таблицу вручную, и код работал нормально. Или есть ли другое решение для этой проблемы?

ответ

1

0 Ваша команда есть в вашей системе: baseline или migrate?

Если вы используете baseline, тогда вам нужно опубликовать дополнительную конфигурацию, чтобы установить, что не так - поскольку создание таблицы schema_version с базовой версией - это именно то, что она делает.

Если вы работаете migrate, наблюдаемое поведение верное - то есть в управляемой базе данных, отличной от Flyway, будет создана таблица schema_version и все миграции будут выполняться. Единственное исключение - если вы установили baselineOnMigrate, который будет эффективно запускать неявный baseline до запуска migrate.

Само собой разумеется, что вы должны не делать, вы полностью поймете на компромисс.

+0

Я фактически устанавливаю baselonOnMigrate, чтобы быть правдой. Я установил базовую линию с помощью flyway.setBaselineVersionAsString ("7") , тогда я использую flyway.migrate() ... Но все же все миграции выполняются с 1. –

+0

Что такое 'schemas'? В соответствии с документами ['baselineOnMigrate'] (https://flywaydb.org/documentation/commandline/migrate)« Следует ли автоматически вызывать базовую линию при выполнении миграции в отношении непустой схемы без таблицы метаданных ». Вы указываете на несуществующую или пустую схему? – markdsievers

+0

Да, это пустая схема, в которую я собираюсь выполнять миграции, но иногда мне не нужны все миграции, я хочу, чтобы выполнялись только миграции из определенной версии. Вот почему я использую настройку базовой линии, но миграция по-прежнему выполняется с самого начала. –

 Смежные вопросы

  • Нет связанных вопросов^_^