Ответ 1
Мне удалось решить проблему с запуском MS SQL Management Studio в качестве ADMINISTRATOR.
У меня есть файл базы данных .mdf
из MS SQL EXPRESS в папке:
C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA
Я хотел бы прикрепить его к MS 2008 R2 (MSSQL10_50.MSSQLSERVER), но используя Server Management Studio, я получаю следующую ошибку:
CREATE FILE encountered operating system error 5(failed to retrieve text for this error. Reason: 15105) while attempting to open or create the physical file
У вас есть идеи, как его решить?
Мне удалось решить проблему с запуском MS SQL Management Studio в качестве ADMINISTRATOR.
Это проблема с разрешениями Windows. Если вы подключились к вашему серверу с помощью проверки подлинности Windows, то пользователю Windows необходимы разрешения для файла. Если вы подключились к вашему серверу с помощью проверки подлинности SQL Server, то учетная запись экземпляра SQL Server (MSSQL $, например MSSQL $SQLEXPRESS) нуждается в разрешениях к файлу. Другие решения, предлагающие войти в систему как администратор, по существу выполняют одно и то же (с куском кувалды:).
Если файл базы данных находится в папке данных SQL Server, он должен унаследовать права пользователя для учетной записи SQL Server из этой папки, чтобы проверка подлинности SQL Server работала. Я бы рекомендовал исправить права учетной записи экземпляра SQL Server для этой папки. Если файл данных находится где-то в другом месте, а учетная запись SQL Server не имеет разрешений, вы, скорее всего, столкнетесь с другими проблемами позже. Опять же, лучшим решением является исправление прав учетной записи SS. Если вы не собираетесь входить в систему как администратор...
Щелкните правой кнопкой мыши на файле mdf и ldf-свойствах → безопасность → полное разрешение
Предоставление прав администратора или полного управления моей базой установки базы данных решает мою проблему
У меня была та же проблема. После нескольких попыток я понял, что подключение сервера sql с проверкой подлинности Windows решило проблему.
В качестве альтернативы поможет другой предлагаемый запуск под управлением администратора.
Однако это только в том случае, если пользователь Windows фактически является админитратором на машине, на которой выполняется SQL-сервер.
Например, при использовании SSMS с удаленного компьютера это не поможет использовать "запустить как administartor", если пользователь является только администратором на компьютере, запускающем SSMS, но не на машине, на которой работает SQL Server.
1. скопируйте ваши файлы -. MDF, -. LDF в pate в этом месте Для сервера 2008 года C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA 2. В SQL Server 2008 используйте ATTACH и выберите то же место для добавления
Я получал схожую ошибку.
CREATE FILE encountered operating system error **32**(failed to retrieve text for this error. Reason: 15105) while attempting to open or create the physical file
Я использовал следующую команду для присоединения базы данных:
EXEC sp_attach_single_file_db @dbname = 'SPDB',
@physname = 'D:\SPDB.mdf'
У меня была эта проблема в Windows 2003 с SQL 2005. Я должен был взять на себя права на файлы в качестве учетной записи пользователя Windows, и я получил базу данных таким образом.
Вы должны щелкнуть правой кнопкой мыши по файлу, выбрать "Свойства", нажать "ОК", чтобы перейти к экрану информации, нажмите кнопку "Дополнительно", выберите свою учетную запись из списка доступных учетных записей или групп, примените это изменение и нажмите "ОК" на Экран свойств. После того, как вы все это сделаете, вы сможете управлять разрешениями на файлы.
Я вошел в SSMS с Windows Authentication, и я смог подключить базу данных без ошибок.
Ура!
Эта же проблема возникает, когда владельцы файла были удалены. Когда это произойдет, если вы перейдете к свойствам файла, вы увидите идентификатор SID, а не имя пользователя. Соблюдайте файл (дайте себе ПОЛНЫЙ КОНТРОЛЬ). Как только это будет сделано, вы сможете делать все, что вам нужно с файлом.
У меня была эта работа при входе в систему, поскольку администратор не выполнял трюк.
Если вы уже работаете как администратор, убедитесь, что пользователь, которого вы используете, имеет правильные роли сервера.
В моем случае у меня возникла ошибка при попытке создать databae на новом диске. Чтобы преодолеть эту проблему, я создал новую папку на этом диске и установил для нее полнофункциональные свойства безопасности Security (может быть достаточно установить Modify). Вывод: УСТАНОВИТЕ "Безопасность диска/папки" для пользователей "Изменить".
Мое решение было несколько сложнее. После проверки пользователя работала служба, выполнявшая MSSMS как локальный и администратор домена, и проверка прав доступа к папке, я все еще получал эту ошибку. Мое решение?
Владение папкой по-прежнему поддерживалось локальной учетной записью.
Свойствa > Безопасность > Дополнительно > Владелец > (службы домена/локального пользователя/группы SQL работают как)
Это разрешило проблему для меня.
скопируйте файлы --.MDF
, --.LDF
, чтобы просмотреть это местоположение. Для сервера 2008 C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA 2
.
В sql server 2008 используйте ATTACH и выберите то же местоположение для добавления
Открытие SSMS в качестве администратора и запуск под управлением SQL Auth vs Windows Auth не работает.
Сработало было просто изменить мое имя файла в том же месте, где расположены файлы LDF и MDF.
alter database MyDB
add file ( name = N'FileStreamName',
filename = N'D:\SQL Databases\FileStreamSpace' )
to filegroup DocumentFiles;
Вот шаги:
Я получил эту ошибку при восстановлении базы данных, которая была скопирована на другой сервер. После долгой борьбы это то, что я сделал
Включить мгновенную инициализацию файла,
Предоставленные разрешения (полный контроль) в папке для учетной записи службы и моей учетной записи Windows,
Перезапуск службы SQL. После этого восстановлена база данных.
Ключ "ошибка операционной системы 5". Microsoft с осторожностью перечисляет различные коды ошибок и значения на своем сайте
https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382(v=vs.85).aspx
ERROR_ACCESS_DENIED 5 (0x5) Доступ запрещен.
Мы столкнулись с этой проблемой, когда windowsuser, удаляющий базу данных и windowsuser с базой данных, отличается. Когда windowsuser, отсоединив базу данных, попытался прикрепить ее, он работал нормально без проблем.
Я просто решил создать файл в D: вместо C: и все работало хорошо. Windows 7... 10 имеет много проблем, касающихся совместного использования и авторизации файлов и папок.
В моем случае Run as Administrator не помогает. Я решил проблему, изменив встроенную учетную запись на локальную систему в Configuration Manager.
Вот что произошло в моем случае. Меня попросили прикрепить файлы для базы данных. Мне дали имена файлов следующим образом
Я продолжал прикреплять файлы и продолжал получать файлы, используемые другим процессом.
Я выполнил запрос к системному представлению выбора имени, имя_физического из sys.master_files; и увидел, что точные имена файлов уже используются другой базой данных, поэтому каждый раз, когда я пытался прикрепить файлы, я продолжал получать сообщение об ошибке, что файлы используются другим процессом (сервер SQL)
Таким образом, если вы получаете такое сообщение, сделайте запрос к системному представлению sys.master_files и посмотрите, какая база данных уже использует те же файлы имен. В дальнейшем вы разберетесь, что делать.
Благодарю.
Не нужно делать все это. Просто щелкните правой кнопкой мыши файлы базы данных и добавьте разрешение всем. Это будет работать точно.