Java Core trainee

Как работает Liquibase?

Ответ

(1) Описываешь changeset'ы — изменения схемы. Формат: XML, YAML, JSON или SQL. (2) При старте Liquibase подключается к БД, смотрит в таблицу DATABASECHANGELOG — какие уже применены. (3) Применяет новые changeset'ы последовательно и фиксирует их в этой служебной таблице. История хранится в БД, а не в файле changelog.

Разбор: Liquibase ведёт служебную таблицу DATABASECHANGELOG, по которой при старте определяет, какие changeset'ы уже применены, и накатывает только новые; changeset'ы описываются в XML, YAML, JSON или SQL. Ловушки: Liquibase не делает автоматический drift-сравнение схемы и применяет ровно описанные изменения; историю он хранит в таблице БД, а не в файле changelog; и поддерживаются все четыре формата, а не только SQL.

Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.

Заказать гайд Пройти тест
новые гайды и свежие вопросы с собесов — первыми в Telegram Смотреть гайды Подписаться