Контроль версий для SqlServer - PullRequest
0 голосов
/ 23 мая 2019

Я работаю над устаревшей базой данных SqlServer без контроля версий.Я попытался импортировать его в проект базы данных VS 2017, но загрузка занимает больше часа («ваш проект будет готов после завершения 1200000 операций») и обычно вылетает за меньшее время, чем потребовалось для загрузки.

У кого-нибудь есть какие-либо предложения по системе контроля версий, которую я могу попробовать, которая справится с реальными базами данных?

Ответы [ 2 ]

0 голосов
/ 23 мая 2019

У меня был большой успех при использовании flyway как с сервером sql, так и с postgres. Он позволяет вам создавать пронумерованные версии, как описано в его ответе, но также предлагает дополнительную защиту, гарантируя, что ваши предыдущие версии не были изменены перед развертыванием любых новых изменений

0 голосов
/ 23 мая 2019

Создайте базу данных и назовите эту версию 0.1.0

Поскольку вам нужно внести в него изменения, например добавить столбцы, данные и т. Д. Сценарий этого и добавьте его в выбранный вами источник контроля. Назовите этот файл примерно так:

Version-0.1.1.sql

По мере того, как вы будете вносить все больше и больше изменений, количество файлов будет добавлено.

Version-0.1.2.sql
Version-0.1.3.sql
Version-0.1.4.sql

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

Чтобы привести базу данных к определенной версии, вы должны запустить сценарии в следующем порядке. Очевидно, что в каждом скрипте у вас есть аварийное переключение и т. Д., Которое обрабатывает все, что может пойти не так в скриптах.

Это ручной процесс, но лучше всего то, что он дешевый, легко понять, не требует больших затрат и является методичной системой управления изменениями.

Примечание: Очевидно, что развертывание сценариев в версии UAT перед непосредственным включением в Live.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...