2016-10-04 4 views
0

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

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

Но требования в том, что код не может быть выполнен в рамках проекта на сервере по соображениям безопасности.

Если взглянуть на методы here, но после этого я бы не забыл менять строку подключения каждый раз.

Я также думал о пакетном скрипте, но как узнать, что такое сервер назначения.

Единственное, что нужно сделать, это сделать файл с изменениями базы данных и при публикации, изменения должны быть сделаны на сервере, на котором я публикую.

это как-то возможно?

+0

вы используете TFS ..? если это так, создайте проект базы данных, в котором размещены все 5 баз данных, а в сценарии развертывания/сборки TFS будут распространяться ваши изменения таким образом. Если это не похоже на то, что вам нужно будет создавать/генерировать некоторые sql-скрипты, которые вы можете выполнить через C# в некоторых secure fashion – MethodMan

+0

У Redgate есть классные инструменты, я использовал приложение для нескольких сценариев в своем последнем месте и любил его. [Ссылка] (http://www.red-gate.com/products/dba/sql-multi-script/) –

ответ

0

Вы можете использовать DACPAC для развертывания проектов со своего источника. Либо это может быть TFS или VSO. Вы можете создавать для разных сред и развертывать проекты баз данных на основе целей. Вы можете автоматизировать непрерывную интеграцию и непрерывное развертывание

Смежные вопросы