Как заставить пакет SSIS динамически выбирать нужный диспетчер соединений? - PullRequest
2 голосов
/ 09 апреля 2019

У меня есть пакет служб SSIS с диспетчером соединений OLE DB с «SQL Server 1», а также диспетчерами плоских файлов, которые приходят с диска D локальной машины.

Пакет в основном извлекает данные с диска D компьютера, который я использую, и через серию контейнеров цикла с задачами SQL отправляет их на «SQL Server 1».Все это прекрасно работает.

Проблема в том, что я хотел бы развернуть точно такой же пакет на «SQL Server 2».Все файлы, таблицы и т. Д. В «SQL Server 2» точно такие же, как и файлы на D-диске локального компьютера, на котором находится «SQL Server 2».Однако я не знаю, как это сделать.

Если я изменил диспетчер соединений OLE DB на «SQL Server 2», все работает отлично, так как задачи SQL автоматически выбирают единственное существующее соединение.Тем не менее, смысл в том, чтобы как-то сделать это динамически.

Это означает, что в качестве диспетчера соединений OLEDB используются и SQL Server 1, и SQL Server 2, и развертывание одного и того же проекта SSIS на обоих серверах (сейчас эторазвертывается только на «SQL Server 1»).

В разделе «Проект - Свойства» я создал новую конфигурацию, в которой «SQL Server 2» выбран в качестве имени сервера для развертывания.Первоначально существовал только один, который, конечно, имеет «SQL Server 1» в качестве сервера для развертывания.Я знаю, что этого недостаточно, но не знаю, что еще делать.

Цель состоит в том, чтобы развернуть один и тот же пакет на Server1 и Server2, и любая помощь будет принята с благодарностью.Спасибо

Ответы [ 2 ]

1 голос
/ 10 апреля 2019

Ответ подробно описан в ссылке, которую я нашел (опубликовано в конце), и объясняет шаг за шагом, как сделать то, что я хотел, а именно развернуть пакет служб SSIS на разных серверах, сделав строку подключения динамической:

Это в основном 5 шагов (опять же, подробно в ссылке):

  1. Создание параметра проекта и настройка менеджера соединений проекта с параметром проекта
  2. Развертывание проекта в каталоге служб SSIS на сервере SQL
  3. Создание среды в каталоге служб SSIS вместе с переменной
  4. Свяжите окружение с проектом и переменную с параметром
  5. Выполнение пакета с использованием среды
1 голос
/ 09 апреля 2019

Вы можете использовать выражения для динамического изменения свойства строки соединения диспетчера соединений OLEDB:

Вы можете добавить параметр Variable или Project и передать строку подключения при выполнении пакета.Для получения дополнительной информации вы можете обратиться к одной из следующих статей:

...