2013-07-03 3 views
0

Я создал пакет SSIS Packaage, который ежедневно импортирует данные.Пакет SSIS работает от SSIS, но не от Job

Я протестировал его в BIDS, и он работает нормально, я развернул его на сервере SSIS, и он работает нормально, но когда я планирую его запустить в качестве работы, он выдает ошибки. Я получаю ошибки ниже. Я добавил учетную запись srvSQLagent в нужную группу, чтобы иметь доступ к папке, которая вызывает проблему. Я пропустил здесь что-то глупое?

=============================================================================================================================================== =====================

Дата 03/07/2013 14:55:06 журнал заданий (Импорт SN2 данных)

Шаг ID 1 Сервер STX-RPT Job Name Импорт SN2 данные Шага Имя Выполнить импорт пакет Длительность 00:00:09 Sql Тяжесть 0 Sql сообщения ID 0 Оператор посылаемых
Оператор Net отправлено
Оператор выгружаемого
Повторные Покушение 0

Сообщение Исполнено как пользователь: INT \ srvSQLagent. Microsoft (R) SQL Server Execute Package Utility Версия 10.50.1600.1 для 32-битного Copyright (C) Microsoft Corporation 2010. Все права защищены.
Начало: 14:55:06
Ошибка: 2013-07-03 14: 55: 15,69
Код: 0xC001401E
Источник: ServiceNet Импорт данных Диспетчер соединений "Скачано"
Описание: Имя файла «\\ FILE \ Groups \ ISG \ England \ Servicenet Data \ Downloaded ", указанный в соединении, недействителен. Конец Ошибка
Ошибка: 2013-07-03 14: 55: 15,69
Код: 0xC0202070
Источник: ServiceNet Импорт данных Диспетчер соединений "Скачано"
Описание: Свойство Имя файла не является действительным. Имя файла - это устройство или содержит недопустимые символы. Конец Ошибка
Ошибка: 2013-07-03 14: 55: 15,69
Код: 0xC0029163
Источник: File System Task File System Task
Описание: Файл или каталог «\\ FILE \ Группы \ ISG \ Англия \ ServiceNet Data \ Downloaded ", представленный соединением" Скачан ", не существует. Ошибка завершения
DTExec: Выполнение пакета возвращено DTSER_FAILURE (1).
Начато: 14:55:06
Закончено: 14:55:15
Истек: 9 секунд.
Выполнение пакета не выполнено.
Шаг не прошел.

+0

Проверьте разрешения. Когда вы запускаете его из BIDS или из SSIS, он запускается под вашими учетными данными. Когда вы запускаете как задание, он использует учетные данные учетной записи пользователя SQLAgent (INT \ srvSQLagent). Похоже, этот пользователь не видит местоположение файла. – Bill

+0

И почему это местоположение файла не является абсолютным путем? Нет гарантии AFAIK для рабочего каталога SQL Job. – TToni

+0

Я зарегистрировался как srvSQLagent и имею доступ к необходимым файлам и папкам. и его UNC, поскольку его доля в сети. Связанные диски являются специфичными для пользователя. –

ответ

0

Проблема возникла из-за использования задачи файловой системы для очистки папки всех файлов.

Я никогда не сталкивался с проблемой, я просто нашел другой способ удаления необходимых файлов.

0

Это определенно проблема с разрешением на доступ к папке.

Просьба предоставить соответствующие права всем.

Alpesh Дхорите Software Professional

0

Я полагаю, что следующее решение поможет вам:

Предположит, что нам нужно написать \\ серв \ доли \ dir1 .. \ DIRN \ TargetDir \ некоей-файл. Txt с помощью SSIS Повсеместно агента SQL Работа и nonadmin учетной записи прокси MYDOMAIN \ акаонт

1) MyDomain \ акаонт нужно чтение/запись доступ для обмена \\ серв \ доля

2) MyDomain \ акаонт требуется по крайней мере, разрешение FILE_READ_DATA для всех папок (доли, dir1, .. DIRN)

3) MyDomain \ акаонт нуждается в правах ИЗМЕНИТЬ + FILE_DELETE_CHILD разрешения на папку TARGETDIR

(CACLS должны показать это разрешения следующим образом:

DELETE 
READ_CONTROL 
SYNCHRONIZE 
FILE_GENERIC_READ 
FILE_GENERIC_WRITE 
FILE_GENERIC_EXECUTE 
FILE_READ_DATA 
FILE_WRITE_DATA 
FILE_APPEND_DATA 
FILE_READ_EA 
FILE_WRITE_EA 
FILE_EXECUTE 
FILE_DELETE_CHILD 
FILE_READ_ATTRIBUTES 
FILE_WRITE_ATTRIBUTES 

)

Конечно, полных прав на targetDir достаточно.

Если у targetDir нет разрешения FILE_DELETE_CHILD, тогда мы наблюдаем такое странное поведение соединения с плоскими файлами в SSIS. Пользователь MyDomain \ TestAccount может делать что-либо с файлом somefile.txt (читать, писать, удалять) с помощью стандартных инструментов Windows. Но SSIS Job не может перезаписать этот файл и выйти из строя.

Смежные вопросы