Миграция базы данных - это не только SQL-скрипт. Она меняет основу, на которой работает приложение, поэтому требует отдельного плана. Перед запуском нужно понять объем данных, блокирующие операции, зависимые сервисы, требования к простою и сценарии проверки после выполнения. Даже небольшое изменение колонки может стать проблемой, если таблица большая или приложение продолжает писать данные во время миграции.
Обязательный шаг - резервная копия и тестовый прогон. Команда должна проверить, что backup создается, восстанавливается и содержит ожидаемые данные. Миграцию запускают на копии продовой базы или максимально близком стенде, замеряют время, проверяют логи, индексы и результат для ключевых пользовательских сценариев. Это выявляет ошибки до реального окна работ.
ООО «Артель»
Хорошая миграция по возможности обратима или хотя бы имеет понятный план восстановления. Если изменение разрушительное, например удаляет поле или преобразует формат данных, стоит разделить его на несколько релизов: сначала добавить новую структуру, затем начать писать в нее данные, позже перенести чтение и только после проверки удалить старое. Такой подход снижает риск внезапной остановки продукта.
После выполнения важно проверить не только схему, но и бизнес-данные. Открываются ли страницы, создаются ли заявки, работают ли фильтры, корректны ли права доступа, не потерялись ли изображения и связи между сущностями. Миграция считается завершенной только тогда, когда приложение подтверждает результат реальными сценариями, а не только успешным статусом команды.



