Ошибка плоского файла пакета служб SSIS - "Имя файла, указанное в соединении, недопустимо"

У меня есть довольно простой пакет служб SSIS, который пытается прочитать файл, размещенный на общем ресурсе, и импортировать его содержимое в таблицу базы данных. Пакет работает нормально, когда я запускаю его вручную в службах SSIS. Однако когда я настраиваю задание агента SQL и пытаюсь его выполнить, я получаю следующую ошибку:

Выполняется как пользователь: DOMAIN\UserName. Microsoft (R) SQL Server Execute Package Utility версии 9.00.3042.00 для 64-разрядных систем. Copyright (C) Microsoft Corp 1984-2005. Все права защищены.
Начато: 10:14:17 AM Ошибка: 2010-05-03 10:14:17.75 Код: 0xC001401E Источник: Диспетчер соединений DataImport "Файл данных локальный"
Описание: имя файла "\10.1.1.159\llpf\datafile.dat", указанное в соединении, недопустимо. Ошибка завершения: 2010-05-03 10:14:17.75 Код: 0xC001401D
Источник: DataAnimalImport
Описание: соединение "Файл данных локальный" не прошло проверку. Ошибка завершения DTExec: выполнение пакета вернуло DTSER_FAILURE (1). Начало: 10:14:17 Окончание: 10:14:17 Прошедшее: 0,594 секунды. Не удалось выполнить пакет. Шаг не удался.

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

Что я пробовал до сих пор:

  • Запуск от имени учетной записи агента SQL (DOMAIN\SqlAgent) - выдает ту же ошибку. DOMAIN\SqlAgent имеет разрешения "Полный доступ" как для общего ресурса, так и для загруженного файла.

  • Настройка учетной записи-посредника с другими учетными данными (DOMAIN\Account) - выдает ту же ошибку. Как и выше, разрешения "Полный доступ" были предоставлены для общего ресурса этой учетной записи.

  • Дали "Все" полный контроль над правами доступа к общему ресурсу (временно!). Получил ту же ошибку.

  • Вручную скопировал файл в локальный путь и протестировал с помощью учетной записи агента SQL. Работал правильно.

  • Добавлена ​​задача сценария ActiveX, которая сначала копирует удаленно размещенный файл в локальный путь, а затем пакет DTS ссылается на локальный файл. При попытке запуска скрипта выдается совершенно неописуемая (даже по стандартам SSIS) ошибка.

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

Есть идеи? Я все еще убежден, что это проблема с разрешениями. Однако то, что я прочитал из различных поисков, более или менее говорит о том, что предоставление прав доступа к учетной записи для общего ресурса должно работать. Тем не менее, это не тот случай (если я не пропустил что-то неясное, когда настраиваю разрешения для общего ресурса).

3 ответа

Решение

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

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

Я знаю, что это сообщение старое, но я только что столкнулся с той же проблемой, я думаю, что вы, ребята, используете пользователя "sa", и у него нет прав доступа к папке, содержащей пакет, попробуйте войти в SQL с аутентификацией Windows и попытаться импортируйте пакет тогда.

работал для меня, надеюсь, это будет работать для вас.

Другие вопросы по тегам