Ошибка восстановления SQL Server-Доступ запрещен



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



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




823   17  

17 ответов:

У меня только что была эта проблема с SQL Server 2012.

оказывается, все, что мне нужно было сделать, это поставить галочку в поле "переместить все файлы в папку" в разделе "Файлы":

enter image description here

(Нажмите, чтобы увидеть изображение в полном размере)

Это, конечно, предполагает, что у вас установлена правильная версия SQL Server.

из сообщения об ошибке, он говорит, что есть ошибка при проверке цель (c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DataLabTables.mdf) вашего восстановления.

звучит как:

a) этот файл уже существует (потому что вы уже восстановили его ранее) и используется SQL Server

или

b) этот каталог вообще не существует

в своем вопросе вы упомянули, что создали резервную копию для этой таблицы - это не то, как работают резервные копии SQL Server. Эти резервные копии всегда представляют собой всю базу данных (или хотя бы одну или несколько файловых групп из этой базы данных).

моя догадка: вы уже восстановили эту базу данных ранее, и теперь, после второго восстановления, вы не установили флажок "перезаписать существующую базу данных" в своем мастере восстановления - таким образом, существующий файл не может быть перезаписан, и восстановление не выполняется.

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

C:\program files\.... защищенный каталог - обычный (не админ) пользователи не имеют доступа к этой папке (и ее подпапках).

Самое простое решение: попробуйте поместить ваш файл BAK в другое место (например,C:\temp) и восстановить его оттуда

у меня была та же проблема. Оказалось, что мой SQL Server и SQL Server Agent услуги logon as бежали под Network Services учетная запись, которая не имела права на запись для выполнения восстановления резервной копии.

Я изменил обе эти службы для входа в систему как Local System Account и это решило проблему.

недавно я столкнулся с этой проблемой с SQL 2008 R2 и ниже решение работало для меня:

1) Создайте новую базу данных с тем же именем, что и та, которую вы пытаетесь восстановить 2) при восстановлении используйте то же имя, которое вы использовали выше, и в настройках нажмите опцию перезаписать

вы можете дать выше выстрел, если другие решения не работают.

у создателя резервной копии была установлена версия MSSql 10, поэтому, когда он взял резервную копию, он также хранит исходный путь к файлу (чтобы иметь возможность восстановить его в том же месте), но у меня была версия 11, поэтому он не мог найти каталог назначения.

поэтому я изменил каталог выходного файла на C:\Program файлы\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\, и он смог успешно восстановить базу данных.

источник

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

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

потерял пару часов на эту проблему. получил это происходит, хотя:

"доступ запрещен" в моем случае действительно означает "доступ запрещен". учетная запись пользователя mssqlstudio на моем устройстве windows не имела полного контроля над папкой, указанной в сообщении об ошибке. я дал ему полный контроль. доступ больше не был запрещен, и восстановление прошло успешно.

Почему папка была заблокирована для studio ? кто знает ? у меня достаточно вопросов, чтобы справиться с этим, не пытаясь ответить больше.

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

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

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

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

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

Frnds... У меня была та же проблема при перенастройке базы данных и пробовал каждое решение, но не мог решить nt. Затем я попытался повторно установить SQL 2005 и проблема решена. Actully в последний раз я забыл проверить опцию customize при установке SQL.. Он приходит два раза при установке, и я проверяю его только для них..

попробуйте это:

в окне мастера восстановления БД перейдите на вкладку файлы, снимите флажок "переместить все файлы в папку", затем измените место назначения восстановления С C: на какой-либо другой диск. Затем продолжите обычный процесс восстановления. Он будет восстановлен успешно.

У меня была та же проблема, но я использовал sql server 2008 r2, вы должны проверить параметры и проверить пути, где sql собирается сохранить файлы .MDF и. ldf необходимо выбрать путь установки sql server. Я решил свою проблему с этим, я надеюсь, что это поможет вам.

У меня была эта проблема, я вошел в систему как администратор, и это исправило проблему.

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

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

Comments

    Ничего не найдено.