Re[4]: Стенды - базы
От: bnk СССР http://unmanagedvisio.com/
Дата: 04.04.22 10:02
Оценка:
Здравствуйте, Miroff, Вы писали:

M>>вы говорите что у разработчика на компе своя база?


M>Да, нет смысла на этом экономить. Если по какой-то причине не хочется держать базы на машине разработчиков, можно завести для каждого разработчика базу на общем сервере.


+1, у каждого разработчика на компе своя база.

M>>Вы версии баз как ведете? Привязываете к версии системы?


M>В базе табличка с номером актуальной версии, в приложении код, проверяющий что версия базы не меньше нужной. В зависимости от флага, приложение либо раскатывает миграции на базу, либо вообще не стартует и зовет админа. Когда хочешь поменять базу, пишешь миграцию и инкрементируешь номер версии. Многие системы версионирования БД устроены сходным образом, посмотрите на Liqubase или Flyway.


Привязывать ни в коем случае не к версии системы, у базы должна быть свои "версия".
И лучше делать именно таблицу (а не просто цифру), в которой регистрировать все примененные миграции.
Таблицу, а не цифру, чтобы миграции можно было применять не строго в определенном порядке (при совместной работе может понадобиться).
То есть, таблица содержит записи всех миграций, которые применены к базе. При накатывании миграций проверяем, что соответствующая еще не была применена.

По такой схеме работает большинство инструментов которыми я пользовался по крайней мере.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.