Выполнение пакета служб SSIS с помощью утилиты dtexec - PullRequest
1 голос
/ 30 апреля 2009

Я создал пакет служб SSIS для создания файла XML, который отлично работает в Visual Studio, но при попытке запустить в командной строке cmd с помощью dtexec /f "C:\OakeyCreek.dtsx" выдает ошибку

Сбой пакета служб SSIS «TestOakey» с кодом выхода: 1

В пакете sqltask дает набор результатов в виде XML, а задача сценария создает файл XML.

Я провел некоторые исследования, один и тот же пакет без задачи скрипта прекрасно работает как в студии, так и в командной строке. Я подозреваю, что проблема с задачей сценария, потому что у меня есть VS2005 и VS2008 на одной машине.

Есть идеи, как решить эту проблему?

Точное всплывающее сообщение об ошибке ...

Необходимо обновить регистрационную информацию для этого приложения. Для обновления войдите в систему как администратор и выполните эту команду.

"C: \ Program Files \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ VSTA.exe" / HostID SSIS_ScriptTask / setup

Моя операционная система Vista

Ответы [ 2 ]

6 голосов
/ 30 апреля 2009

Примечание. Отредактировано для предоставления ответа!

Итак, вы настроили задание агента SQL Server и теперь не можете записывать в файловую систему. Это ожидаемое поведение, поскольку агент SQL Server использует учетные данные SQL Server для запуска задания, не учетные данные Windows. Итак, что вам нужно сделать, это:

  1. В папке «Безопасность» на сервере базы данных в SQL Server Management Studio найдите папку Credentials.
  2. Щелкните правой кнопкой мыши по учетным данным и нажмите Новые учетные данные.
  3. Настройте учетные данные как вы.
  4. Разверните агент SQL Server, щелкните правой кнопкой мыши Прокси и выберите Новый прокси.
  5. Настройте прокси-сервер под себя, используя только что созданные учетные данные.
  6. Разрешить Прокси-серверу иметь подсистему SSIS (если это администратор, проверьте все).
  7. Перейдите к редактированию шага вашей работы, который вызывает пакет служб SSIS.
  8. Измените поле «Запуск от имени» с агента SQL Server на прокси-сервер, который вы только что настроили (если вы все сделали правильно, это будет единственный другой выбор в выпадающем списке).
  9. Тебе должно быть хорошо идти!

Приветствия
Eric

2 голосов
/ 30 апреля 2009

Вы создаете пакет, используя SSIS 2005, но запускаете его, используя DTEXEC из SSIS 2008 - возможно, у вас установлены как SSIS 2005, так и 2008, и DTEXEC 2008 появляется первым в пути.

Чтобы использовать DTEXEC 2005, укажите полный путь, например "c: \ program files \ Microsoft Sql Server \ 90 \ dts \ binn \ dtexec.exe" / f Package.dtsx

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

"C: \ Program Files \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ VSTA.exe" / HostID SSIS_ScriptTask / setup

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