Загрузка исходной схемы в таблицу Flyway для существующей базы данных

Я прочитал документацию Flyway (2.1.1) и просто хотел получить небольшое разъяснение по одному пункту ...

Я скопировал текущий DDL из нашей производственной базы данных в файл V1__baseddl.sql. Я проверил, что наша база данных QA имеет схему, соответствующую продукту.

Теперь я хочу передать нашу базу данных QA под управление Flyway (с последующим производством). Мы используем Flyway через API. Я вызвал flyway.setInitVersion (1), затем flyway.init (), и я ожидал, что он найдет файл V1__baseddl.sql и установит его как версию 1 в таблице flyway.schema_version, но фактически не выполнит его содержимое (поскольку схема уже существует в базе данных). В таблице schema_version я вижу строку с исходной версией, но для скрипта у нее всего лишь ‹*********************** Flyway Init >>.

Как я могу «загрузить» исходный файл схемы (V1__baseddl.sql) в таблицу schema_version как версию 1?


person nycjay    schedule 05.04.2013    source источник


Ответы (1)


Чтобы изменить описание, нужно позвонить flyway.setInitDescription("baseddl")

person Axel Fontaine    schedule 05.04.2013
comment
и будет ли он на самом деле смотреть на сам файл (сгенерировать хеш и т. д.)? - person nycjay; 06.04.2013
comment
Нет, не будет ни поиска файлов, ни хеша. Основная цель состоит в том, что wenn V2 поставляется вместе с ним, его можно одинаково мигрировать во всех средах (и для обеспечения того, чтобы V1 не запускался в тех, которые вы инициировали) - person Axel Fontaine; 06.04.2013