Моя команда оценивает dbdeploy для управления миграцией базы данных. Насколько я понимаю, использование миграций требует некоторой дисциплины процесса, а именно, что миграция записывается для каждого изменения и что для достижения производства его нужно будет перевести с локального на разработку для тестирования на производство.
Время от времени наша производственная команда DBA вносит изменения схемы непосредственно в производственную среду. Если мы напишем новую миграцию для внесения изменений в нашу текущую версию базы данных для разработки, эта миграция никогда не будет проверяться по схеме, которая уже содержит изменение, до тех пор, пока миграция не будет развернута в рабочей среде. Это касается меня.
Другой вариант - внести изменения непосредственно в базовую схему, а затем перестроить базу данных во всех средах (локальная, разработка, тестирование, этап). Этот подход касается меня, потому что новая схема может привести к сбою одной или нескольких миграций.
Как люди в настоящее время обрабатывают этот сценарий?