mssql ' 5 (Доступ запрещен.)' ошибка при восстановлении базы данных
Я хочу восстановить базу данных из файла (Задачи->восстановление->база данных; после выбора из устройства и выбора файла) через SQL server management studio.
после этого, я получаю эту ошибку:
операционная система вернула ошибку ' 5 (Доступ запрещен.) при попытке
'RestoreContainer:: ValidateTargetForCreation 'on' E:Program файлыMicrosoft SQL
Иметь значение mssql10 сервер.MSSQLSERVERMSSQLDATAXXXXXX.МДФ'.
Msg 3156, Уровень 16, Состояние 8, сервер XXXX, Строка 2
Как я могу исправить эту проблему? Это ошибка безопасности?
12 ответов:
учетная запись, под которой работает sql server, не имеет доступа к местоположению, в котором находится файл резервной копии, или пытается восстановить базу данных. Вы можете использовать диспетчер конфигурации SQL Server найти, какая учетная запись используется для запуска экземпляра SQL Server, а затем убедитесь, что учетная запись имеет полный контроль над .Файл BAK и папка, в которую будет восстановлен MDF.
У меня недавно была эта проблема. Исправление для меня состояло в том, чтобы перейти на страницу файлов диалогового окна восстановления базы данных и проверить "переместить все файлы в папку".
Ну, в моем случае решение было довольно простым и прямым.
мне пришлось изменить только значение
log On Asзначение.действия разрешения-
- открыть
Sql Server Configuration manager- право
click on SQL Server (MSSQLSERVER)- на
Properties
- изменить
log On Asзначение toLocalSystemнадеюсь, что это поможет вам тоже :)
Я просто столкнулся с этой же проблемой, но другим исправить. По сути, на моем компьютере были установлены как SQL Server, так и SQL Server Express. Это не сработало бы, когда я попытался восстановить SQL Express, но работал правильно, когда я восстановил его на SQL Server.
Я нашел это, и это сработало для меня:
CREATE LOGIN BackupRestoreAdmin WITH PASSWORD='$tr0ngP@$$w0rd' GO CREATE USER BackupRestoreAdmin FOR LOGIN BackupRestoreAdmin GO EXEC sp_addsrvrolemember 'BackupRestoreAdmin', 'dbcreator' GO EXEC sp_addrolemember 'db_owner','BackupRestoreAdmin' GO
Если вы подключаете базу данных, взгляните на сетку "базы данных для подключения", а именно в столбце владелец после того, как вы указали свой .файл МДФ. Обратите внимание на учетную запись и предоставьте ей полные разрешения для файлов mdf и ldf.
Я попробовал выше сценарий и получил ту же ошибку 5 (доступ запрещен). Я сделал глубокое погружение и обнаружил, что файл .бак должен иметь доступ к учетной записи службы SQL. Если вы не уверены, введите services.MSC в Пуск -> Выполнить, а затем проверить для учетной записи службы SQL.
затем перейдите в файл, щелкните правой кнопкой мыши и выберите вкладку Безопасность в свойствах, а затем отредактируйте, чтобы добавить нового пользователя.
наконец, затем дать полное разрешение на него, чтобы дать полный доступ.
затем из SSMS попробуйте восстановить резервную копию.
Я получал ту же ошибку при попытке восстановить SQL 2008 R2 backup db в SQL 2012 DB. Я думаю, что ошибка связана с недостаточными разрешениями для размещения .MDF и. файлы ldf на диске C. Я попробовал одну простую вещь, то мне удалось восстановить его успешно.
попробуйте это:
в окне мастера восстановления БД перейдите на вкладку файлы, измените пункт назначения восстановления С C: на другой диск. Затем продолжите обычный процесс восстановления. Он обязательно получит восстанавливает успешно!
надеюсь, что это поможет вам тоже. Ура :)
В моем случае я должен был поставить галочку в
Overwrite the existing database (WITH REPLACE)подOptionstab onRestore Databaseстраница.надеюсь, это поможет кому-то.
У меня была точно такая же проблема, но мое исправление было другим - моя компания шифрует все файлы на моих машинах. После расшифровки файла MSSQL не было никаких проблем с доступом и создал БД. Просто щелкните правой кнопкой мыши .бак файл ->свойства ->дополнительно... ->шифровать содержимое для защиты данных.
Это случилось со мной ранее сегодня, я был членом группы администратора локального сервера и имел беспрепятственный доступ, или я так думал. Я также отметил опцию "заменить", хотя в экземпляре нет такой БД.
выяснилось, что раньше там была БД с тем же именем, а файлы MDF и LDF по-прежнему физически расположены в папках данных и журналов сервера, но фактические метаданные отсутствуют в системе.база данных. учетная запись службы SQL server также не может ovewrwrite существующие файлы. Выяснил также, что владелец файлов "неизвестен", мне пришлось сменить владельца на 2 файла выше, чтобы он теперь принадлежал группе администраторов локального сервера, а затем переименовал ее.
затем, наконец, это сработало.
Я получил эту ошибку, потому что я проверил "перераспределить все файлы в папку" на вкладке файлы окна восстановления базы данных, но путь по умолчанию не существует на моей локальной машине. У меня были файлы ldf/mdf в другой папке, как только я изменил это, я смог восстановить.





Comments