Вот моя ситуация:
У меня два сервера, на сервере A установлен сервер базы данных и агент SQL (SQL Server 2008 Enterprise Edition, 64-разрядная версия). На сервере B есть приложение от производителя, которому по какой-то причине требуется, чтобы SSIS находился на том же сервере. Согласно лицензированию MSDN у меня не может быть более 1 экземпляра SSIS на лицензию SQL Server. Мы пошли дальше и установили SSIS только на сервер B и применили инструкции по настройке, приведенные в http://msdn.microsoft.com/en-us/library/ms137789.aspx чтобы сообщить ему, что база данных находится на сервере A.
Я могу запустить пакет вручную с помощью DTEXEC на сервере B, и он работал без ошибок. Однако я не могу настроить задание агента SQL на сервере A, которое будет выполнять пакет для установки SSIS сервера B. Я получаю сообщение об ошибке установки SSIS на сервере A.
Вопрос в том, как мне сказать агенту в A выполнить пакет с использованием SSIS на B?
Кажется, это просто невозможно. После того, как мы потратили около 10 часов из наших часов поддержки «Microsoft Premier», единственный ответ, который продолжает приходить, - «выполнить dtexec удаленно на машине, на которой есть SSIS».
Итак, я собираюсь опубликовать это как ответ в надежде, что какой-нибудь SQL MVP появится и докажет, что я ошибаюсь.
Что касается того, как это сделать, я, вероятно, воспользуюсь преимуществами наших существующих агентов Control-M или сделаю небольшое приложение .Net, которое будет вызывать команду через WMI.
Больше всего меня беспокоит то, что я нашел лицензионные документы от Microsoft, в которых говорится, что SSIS может находиться на отдельном сервере от ядра СУБД и что он должен просто работать.