Как обеспечить, чтобы миграции запускались только один раз (не повторно при каждом деплое)?

Используйте журнал применённых миграций и блокировку, исключающую одновременное выполнение несколькими процессами.

Короткий ответ

Что ответить на собеседовании

Используйте журнал применённых миграций и блокировку, исключающую одновременное выполнение несколькими процессами.

Подробный разбор

Ответ с пояснениями

Используйте журнал применённых миграций и блокировку, исключающую одновременное выполнение несколькими процессами.

При каждом деплое runner может запускаться, но выполняет только ещё не применённые версии. Запись результата и изменение схемы делают согласованными с возможностями СУБД. Для нетранзакционных операций нужна безопасная обработка частичного сбоя; один Kubernetes Job без журнала недостаточен.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее