Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 SQL Server 2017 проблема при выполнении задачи  [new]
johnybrava
Member

Откуда:
Сообщений: 3
Перешел с 2008 сервера и бд на 2019 сервер и 2017 бд. Проблема появилась с созданием задания на бэкап.
Сам бэкап создается без проблем. Далее переходим ко второму шагу и выполняем cmd файл по пути E:\backup\ren.cmd и получаем ошибку:

Executed as user: NT Service\SQLSERVERAGENT. C:\Windows\system32>set dt=20.10.2019 C:\Windows\system32>ren E:\backup\backup 20.10.2019.bak Отказано в доступе. C:\Windows\system32>move /Y E:\backup\20.10.2019.bak E:\backup\complete\ Не удается найти указанный файл. Process Exit Code 1. The step failed.

Содержимое файла:

set dt=%date%
ren E:\backup\backup %dt%.bak
move /Y E:\backup\%dt%.bak E:\backup\complete\

Как я понимаю у учетной записи из под которой запускается этот файл не достаточно прав, но вопрос в том, как расширить эти права.
20 окт 19, 06:24    [21998161]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server 2017 проблема при выполнении задачи  [new]
vikkiv
Member

Откуда: London
Сообщений: 2624
johnybrava,

Вариант 1 : дать необходимый доступ учётке агента к нужной директории
Вариант 2 : сконфигурировать опцию "Run As" в шаге агента на пользователя у которого есть необходимый доступ к выполнению cmd операций и нужной директории файловой системы
https://docs.microsoft.com/en-us/sql/ssms/agent/configure-a-user-to-create-and-manage-sql-server-agent-jobs?view=sql-server-ver15#SSMS
20 окт 19, 16:55    [21998334]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server 2017 проблема при выполнении задачи  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 30806
johnybrava
Как я понимаю у учетной записи из под которой запускается этот файл не достаточно прав, но вопрос в том, как расширить эти права.
В свойствах папки, в секюрити, дайте права этому пользователю, NT Service\SQLSERVERAGENT. То есть, в интерфейсе, нужно искать пользователя SQLSERVERAGENT$ (да, вот так)
20 окт 19, 17:48    [21998343]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить