Ведется разработка в git репозитории, как поддерживать sql структура в актуальном варианте?

Есть четыре разработчика. Каждый может добавить новые таблицы в бд. Есть система теститирования Codeception. Тесты не все разботчики прогоняют. Дампы делают вручную. В репозитории скапливается много много дампов. Как поддерживать sql структура в актуальном варианте? Как автоматизировать процесс?
  • Вопрос задан
  • 3050 просмотров
Решения вопроса 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Миграции. Каждое изменение базы данных - делаете миграцию. Никакого изменения структуры базы вручную, написали миграцию, написали up/down оной и вперед накатывать и если что откатывать. Так же первоначальный дамп базы можно сделать как первую версию. То есть база с нуля должна разворачиваться миграциями.

https://github.com/robmorgan/phinx - советую вот эту реализацию.

Так же стоит реализовывать изменения БД так, что бы новая версия не ломала старую. Не нужно просто так удалять поля из базы, или таблицы. Только если без этого вот никак. Это позволит вам потом автоматизировать и процесс деплоя с откаткой изменений, но вам придется начать думать при проектировании БД.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@carbon88
.NET developer/ORM developer
у вас получается файлы в формате *.sql? если да, то в них вроде в текстовом варианте запросы на создание таблиц и вставку данных. что мешает размещать его в репозитории и менять строки по опрелеленной договоренности?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
24 апр. 2024, в 19:18
50000 руб./за проект
24 апр. 2024, в 19:05
15000 руб./за проект
24 апр. 2024, в 18:39
80000 руб./за проект