dnibbo Ответов: 1

Права доступа к файлам Sql


Надеюсь, кто-нибудь здесь сможет помочь...

Наш диск C: на одном из наших серверов становится немного переполненным, поэтому мы решили попытаться переместить базы данных SQL на другой диск на той же машине. SQL 2016 - Windows Server 2016. Обратите внимание, что это виртуальный сервер, работающий под управлением Hyper-V.

Мы следовали инструкциям, чтобы отсоединить базу данных, затем скопировать файлы в нужное место, а затем снова прикрепить базу данных.

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

Прочитав миллион сообщений об этом, каждый говорит о том, что нам нужно добавить полные разрешения к NT Service/MSSQLSERVER.
Это звучит разумно,но вкладка безопасность не распознает записи службы ant NT.

Глядя на запущенные службы, он определенно использует это как вход в систему службы, так почему же мы не можем выбрать его при попытке разрешить полный доступ к перемещенным файлам?

Мы поставили галочку, чтобы показать учетные записи служб, но по-прежнему ничего.

Какую глупую ошибку я совершил на этот раз?

Спасибо

Что я уже пробовал:

Попытался добавить разрешения через файл "свойства" параметров безопасности, но не смог найти учетную запись SQL server.

dnibbo

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

1 Ответов

Рейтинг:
1

RickZeeland

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

Этот ответ StackOverflow может быть именно тем, что вы ищете: Лучший способ копирования базы данных (SQL Server 2008) - переполнение стека[^]


dnibbo

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

Так получилось, что SQL смог прочитать данные, но не обновить их, поэтому мы предположили, что он использует разрешения server\users.
Мы изменили его на полный контроль и затем могли установить значение только для чтения False.

Не совсем уверен, что здесь подразумевается, но, похоже, это работает нормально?

Спасибо