2013-05-21 41 views
3

已解决。看到我的答案(但首先看到我对问题的第二个编辑)。恢复SQL备份失败 - 访问被拒绝

我试图还原从一台计算机上的另一个数据库备份 - 从而复制分贝,但我得到这个消息:

System.Data.SqlClient.SqlError: The operating system returned the error '5(Access is denied.)' while attempting 'RestoreContainer::ValidateTargetForCreation' on 'c:\Program Files\Microsoft SQL Server...'. (Microsoft.SqlServer.SmoExtended)

这是为什么?我可以创建新的数据库,那么为什么不恢复?是因为它来自另一台电脑吗? (我读过这实际上是通常的方式来复制一个分贝,所以这不应该成为问题。)

我没有太多的经验,所以不排除任何明显的解释。

编辑:

我可以“还原”使用管理员用户帐户的管理员的SQL Server比如,它(我有两个 - 一个是管理员,以及一个用于定期账户。)但不能从帐户到常规用户的 SQL Server实例。

编辑2:

看来,目前已经存在的文件备份的文件名(即使我改变了现有分贝的名)。我现在正在处理这个问题(尝试恢复到不同的文件名仍然不成功)。

+0

由于版本不匹配,我以前发生过类似的故障。确保您的还原脚本和数据库版本相同,如果不是,请检查兼容性选项。 –

+1

@MrJack谢谢。但我只是想从一个管理员帐户尝试它,并且可以完成,但不是常规用户的SQL Server实例。 (请参阅问题中的编辑。) – ispiro

+0

我对reg的帮助很大。用户帐户虽然,我使用SQL Server是内部的,我总是管理员。 –

回答

5

的解决方案是,以确保该数据库是在MSSQL11.MSSQLSERVER文件夹中创建(而不是在MSSQL10_50.SQLEXPRESS文件夹)。然后SSMS成功地“恢复”数据库。

+0

我正在使用SQL Server 2014,对于我来说,路径是MSSQL11.MSSQLSERVER \ MSSQL \ DATA \但我仍然一样错误 –

4

我刚刚得到这个错误与SQLSERVER14。所有我所做的只是检查“移居所有文件到文件夹”在恢复向导的文件选项卡复选框。

数据库成功恢复。

+0

感谢您的评论,这实际上在我的情况下做到了!我没有编辑任何许可或任何内容,这是做的 - 再次感谢! – ChenChi

+0

谢谢,这对我有帮助。 – Farzaneh

1

面对类似的问题。 Windows安全性正在阻止将数据库恢复到“目标”位置。修复安全设置可以解决此问题。

右键单击目标文件夹 - >属性 - >安全 - >选择适当的用户,然后编辑权限(我已授予用户完全访问权限)。希望这能解决问题。