Поправьте меня, если я ошибаюсь, но кажется, что первым шагом Flyway по интеграции существующей базы данных является создание файла инициализации SQL, содержащего DDL и извлечения эталонных данных из производства (см. здесь). Но я не понимаю цели такого файла, поскольку он, похоже, не используется ни плагином maven Flyway, ни API Flyway. Таким образом, нет возможности восстановить базу данных в исходное состояние с помощью инструментов, предоставляемых Flyway. У кого-нибудь есть идеи по поводу создания файла инициализации?
Flyway: интерес к созданию файла инициализации SQL?
Ответы (1)
Идея заключается в том, чтобы привести все среды в соответствие с рабочей средой, чтобы у вас была общая база, на которую можно положиться.
Цель этого состоит в том, чтобы гарантировать, что миграции, которые будут выполняться в рабочей среде, будут опробованы на базах данных с идентичными структурами в разработке и тестировании.
person
Axel Fontaine
schedule
02.03.2012
Спасибо Алекс, а если быть точнее, то какой интерес в создании файла инициализации SQL, имя которого совпадает с названием базовой версии? Например, должен ли я создать файл с именем V1.0__base_version.sql перед запуском
mvn flyway:init -Dflyway.initialVersion=1.0 -Dflyway.initialDescription="base version"
, так как этот файл, похоже, не используется flyway?
- person 1tox; 03.03.2012
flyway:init предназначен для рабочей БД, чтобы указать, что это состояние, в котором Flyway будет управлять обновлениями. Тогда V1.0__base_version.sql будет содержать именно эту структуру и применяться ко всем остальным средам. Таким образом, все среды будут иметь одинаковую структуру, и Flyway сообщит, что 1.0 является текущей версией во всех из них, даже если миграция для рабочей БД еще не выполнялась. Единственное, что там произошло, это создание таблицы метаданных с одной строкой маркера, результатом команды init.
- person Axel Fontaine; 03.03.2012
Хорошо, я понимаю. Спасибо и поздравления для вашей структуры !!
- person 1tox; 04.03.2012
Спасибо! Обратная связь действительно приветствуется :-)
- person Axel Fontaine; 04.03.2012