Как предоставить агенту SQL Server доступ для записи / изменения системных файлов?

У меня есть задание с хранимой процедурой, которая запускает BCP для ЗАКАЗА некоторых данных.

Если я запускаю команду QUERYOUT сама по себе, она работает.

Однако, если я пытаюсь запустить его в JOB, он создает файл, но "зависает", и данные никогда не помещаются в файл. Это навсегда зависает, поэтому я обычно отключаю BCP.exe.

Мой вопрос:

Как получить задание SQL для запуска BCP, чтобы выполнить QUERYOUT и иметь разрешения для этого?

QUERYOUT отправляется на диск C:\ (так что ничего особенного или что-то в этом роде).

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

Владелец задания SQL является частью группы SYS ADMIN в SQL.

Любая помощь будет принята с благодарностью.

1 ответ

Решение

Проверьте, какой пользователь назначен службе агента SQL Server. Откройте services.msc, найдите агент SQL Server и проверьте свойства входа в систему. Там будет либо пользователь LocalSystem (маловероятно, основываясь на том, что вы описали), либо другой пользователь.

Убедитесь, что у пользователя есть доступ "Запись" к папке, в которую вы пытаетесь записать дамп BCP.

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