Безопасная миграция большой рабочей базы разделяет изменение схемы, перенос исторических данных и переключение приложения, сохраняя обратную совместимость во время смешанной работы нескольких версий.
Сначала расширьте
Добавьте новые поля или таблицы без удаления старых, выпустите код, понимающий обе формы, и наблюдайте. Блокировки измеряйте.
Перенесите данные
Заполняйте историю небольшими порциями, контролируйте ошибки, нагрузку и расхождения, сохраняя возможность продолжить после остановки. Скорость ограничивайте.
Затем сократите
После полного перехода подтвердите отсутствие старых читателей и записей, только потом удаляйте прежнюю схему. Этапы версионируйте.
Для большой таблицы обязательно испытайте миграцию на реалистичном объеме и версии движка, потому что быстрая операция на пустом staging может удерживать блокировку, переполнить журнал или создать репликационную задержку в production.
Возврат версии планируйте через процедуру отката. Тестовую среду приблизьте к production.