2008-10-03 4 views
3

Я пытаюсь удаленно запустить пакет DTSX из летучей мыши файл с помощью следующей команды:Как удаленно запускать пакет DTSX из файла bat?

DTEXEC /DTS "\File System\MY_PACKAGE_NAME" /SERVER MY_SERVER_NAME /MAXCONCURRENT " -1 " /CHECKPOINTING OFF /REPORTING V 

Это работает нормально локально, но не суметь удаленно (у меня есть права администратора на машине я указывая на и у меня есть SQL). Я получаю ошибку тайм-аута (истекло время ожидания входа в систему).

ответ

3

После небольшого исследования, похоже, что дистанционное управление DTEXEC невозможно (его нужно запускать локально - удаленное выполнение не поддерживается).

Чтобы преодолеть это ограничение, следующий метод, кажется, широко внедрено:

  1. настроить работу SQL для запуска пакета DTSX
  2. создать хранимую процедуру для выполнения задания
  3. использования ISQL (удаленно выполненный) для запуска хранимой процедуры в соответствующем экземпляре SQL (с учетными данными SQL, а не с машинными учетными данными)
1

SSIS также предоставляет веб-службу лед на сервере хостинга. Вы можете через код, запросить машину для пакетов, запускать пакеты через базу данных или файловую систему и программно добавлять/изменять переменные пакета через любую платформу программирования, которая вам нравится.

Сообщалось, что вы также можете настроить свой веб-сервис для вызова локального командного файла, который содержит команду «DETEXEC».

+0

интересный вариант - благодаря – JohnIdol 2009-01-15 15:02:46

5

Это очень возможно, и так легко. Нет необходимости иметь процедуру хранения, а также SQL-агент или веб-интерфейс или .NET-разработку. Я удивлен, что Microsoft никогда не предлагала это:

  1. Запланировать задачу на SQL Server для запуска пакета DTSX. Отключите его, чтобы он не запускался, пока вы не выполнили его вручную с удаленного ПК.
  2. Выполнить задание с компьютера с помощью команды:

Schtasks/запустить/т MyTask [/ s MySQLServer [/ u [домен] пользователь/р пароль]] /?

Примечание: если вам не нравится, обнажая пароль, используйте команду «Psexec», чтобы выполнить команду «SchTasks» (скачать бесплатно и мощный инструмент от http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx

+0

Так вы» re настраивая задачу Windows для запуска DSTEXC, а затем вы запускаете задачу удаленно? Звучит как хорошая идея для меня, проще, чем то, что я придумал :-) +1 – JohnIdol 2009-03-28 15:52:23