Ошибка восстановления SQL Server - доступ запрещен - PullRequest
142 голосов
/ 11 августа 2011

Я создал базу данных на своем локальном компьютере, а затем сделал резервную копию с именем tables.bak таблицы DataLabTables.

Я переместил эту резервную копию на удаленный компьютер без этой таблицы и попытался выполнить восстановление, но получил следующую ошибку:

System.Data.SqlClient.SqlError: Возвращена операционная системаошибка «5 (доступ запрещен.)» при попытке «RestoreContainer :: ValidateTargetForCreation» в «c: \ Program Files \ Microsoft SQL Server \ MSSQL.1 \ MSSQL \ DataLabTables.mdf '.

Как мне исправить мои права, если в этом проблема?

Ответы [ 18 ]

0 голосов
/ 23 августа 2015

Друзья ... У меня была такая же проблема при восстановлении базы данных, и я испробовал каждое решение, но не смог решить. Затем я попытался переустановить SQL 2005 и проблема решена. Вообще-то, в прошлый раз я забыл проверить опцию настройки при установке SQL .. Это происходит два раза при установке, и я проверил ее только для тех, кто только ...

0 голосов
/ 20 августа 2015

У меня такая проблема.Ошибка, вызванная включенным сжатием в папках SQL Server.

0 голосов
/ 11 августа 2011

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

0 голосов
/ 14 ноября 2014

Извините, потому что я не могу комментировать ...

У меня была такая же проблема.В моем случае проблема была связана с попыткой восстановления в старой папке сервера sql (которая существовала на сервере).Это связано с тем, что на новом сервере sql (SQL Server 2014) восстановлена ​​старая резервная копия сервера SQL Server (т. Е. Резервная копия SQL Server 2012).Реальная проблема не слишком отличается от ответа @marc_s.В любом случае, я изменил только целевую папку на новую папку данных SQL Server.

0 голосов
/ 30 сентября 2013

Другим сценарием может быть существование нескольких путей к базе данных. Во-первых, запишите путь, по которому в настоящее время хранятся новые базы данных. Поэтому, если вы создаете новую пустую базу данных и затем делаете Tasks/Restore, убедитесь, что путь, который пытается использовать восстановление, совпадает с каталогом, в котором была создана пустая база данных. Даже если путь восстановления допустим, вы все равно получите ошибка доступа запрещена, если это не текущий путь, с которым вы работаете. Очень легко определить, когда путь недопустим, гораздо труднее обнаружить, когда путь допустим, но не текущий путь.

0 голосов
/ 30 апреля 2018

Перейдите в C: \ Program Files \ Microsoft SQL Server \ MSSQL12.MSSQLSERVER \ MSSQL \ DATA \ и нажмите Разрешить доступ при появлении нового окна

0 голосов
/ 09 июля 2019

В моем случае - мне пришлось дважды проверить путь к резервной копии базы данных, из которой я восстанавливал. Я ранее восстановил это с другого пути, когда я сделал это в первый раз. Я исправил путь резервного копирования, чтобы использовать путь резервного копирования, который я использовал в первый раз, и он работал!

0 голосов
/ 12 августа 2015

Возможно, это не лучшее решение, но я пытался выполнить восстановление в SQL Server 2005, но я перешел на SQL Server 2008, и он работал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...