2015-06-29 5 views
0

Я пытаюсь начать использовать трассировки SQL, и я бегу в «Доступ запрещен» ошибки при использовании следующей:SQL Server: Трассировка не будет создавать файл

exec @rc = sp_trace_create @TraceID output, 0, N'C:\Users\USER$\Desktop\SQLTrace', @maxfilesize, NULL 

если (@rc = 0) goto error

Я пробовал UNC-путь и локальный, я использую учетную запись администратора для входа в Mgmt Studio, какой компонент мне не хватает? Я попытался сохранить локально и удаленный клиент.

+0

Является ли сервер удаленным или установлен на вашем локальном компьютере? – Wolves

+0

Сервер удален Я использую локальную Mgmt Studio – Rednoc

+0

Файл трассировки будет создан ** в файловой системе ** вашего ** удаленного сервера ** (не в файловой системе вашего локального компьютера!) - этот сервер имеет каталог 'C: \ users \ .....' –

ответ

0

Оказывается, по какой причине я должен был указать расположение сюда для того, чтобы работать:

C: \ Users \ Public \ Desktop

Независимо от того, какой аккаунт я использовал для SSMS .. . Определенно разрешение связано, но поскольку я являюсь администратором для Windows и SQL, не уверен, где корень причины ..

+0

Часть проблемы, по крайней мере, на локальной рабочей станции (например, на вашем ноутбуке) заключается в том, что если вы установили SQL Server, она использует учетную запись «local service» (например, «Служба NT \ blah»), которая обычно делает * не имеют разрешения на запись в большинство мест в папках пользователя. Кроме, конечно, Public. – NateJ

0

Запуск SQL Server Management Studio в качестве администратора на вашем локальном компьютере не даст административных разрешений на удаленном компьютере. Попробуйте удаленный рабочий стол на сервере в качестве администратора и запустите запрос.

+0

Я перешел на сервер и запустил студию Mgmt на этом сервере в качестве администратора и по-прежнему получаю ту же ошибку ... – Rednoc

+0

Используете ли вы проверку подлинности Windows или логин SQL для входа в Management Studio? – Wolves

+0

Аутентификация Windows, я не пробовал SQL ... – Rednoc

1

Это не то разрешение, которое имеет ваша учетная запись, независимо от того, имеет ли учетная запись, которая используется для запуска службы SQL Server, права на запись в эту папку. Сначала проверьте это. См. sp_trace_create doc:

Для sp_trace_create учетная запись службы SQL Server должна иметь разрешение на запись в папку файла трассировки. Если учетная запись службы SQL Server не является администратором на компьютере, где находится файл трассировки, вы должны явно предоставить разрешение на запись учетной записи службы SQL Server.

+0

Хорошо, знаете ли вы, что все сервисы используются SQL, для чего нужны разрешения администратора? Я пробовал MSSQLSERVER (добавив разрешения администратора NTFS только в поле DEV), и это еще не сработало ... – Rednoc

+0

Это учетная запись, которая запускает службу MSSQLServer. Вам нужно будет сделать еще немного отладки, именно так: попробовали ли вы войти на сервер с той же учетной записью и проверить, что вы можете записать в папку C: \ Users \ USER $ \ Desktop \ SQLTrace? Вы также можете попробовать выполнить xp_cmdshell и посмотреть, можете ли вы создать папку или получить доступ к той же папке. В любом случае это приведет к разрешению проблемы с учетной записью. – Greg

+0

Да, я уверен, что это проблема с разрешением, однако я вхожу в окно Dev с учетной записью администратора, используя эту же учетную запись администратора для открытия SSMS.Я также смог создать и удалить с помощью той же учетной записи в окнах, поэтому это расстраивает ... пытаясь точно определить, где проблема с разрешением ... – Rednoc

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