我在本地机器上创建了一个数据库,然后对表DataLabTables进行了名为tables.bak的备份。

我将备份移动到远程机器,没有该表,并尝试进行恢复,但得到以下错误:

sqlclient . sqlerror:操作系统返回 尝试访问时错误'5(访问被拒绝。)' 'RestoreContainer::ValidateTargetForCreation'在c:\程序 文件\Microsoft SQL Server\MSSQL.1\MSSQL\DataLabTables.mdf `。

如果这是问题所在,我该如何修正我的权利?


当前回答

我有这个问题,我以管理员身份登录,它解决了这个问题。

其他回答

我有同样的问题,但我使用sql server 2008 r2,你必须检入选项并验证sql将保存文件.mdf和.ldf的路径,你必须选择你的sql server安装的路径。我用这个解决了我的问题,希望它能帮助到你。

我也遇到过类似的问题。我试图恢复一个2005年的。bak文件,我收到了完全相同的错误。我也选择了覆盖选项,但无济于事。

我的解决方案是通过转到文件夹并通过属性屏幕编辑访问权限,授予SQL用户对所讨论的目录的访问权限。

有这样的问题。对SQL Server文件夹启用压缩导致的错误。

抱歉,因为我不能评论…

我也有同样的问题。在我的情况下,问题与试图恢复在一个旧的sql server文件夹(存在于服务器上)有关。这是由于旧的sql server备份(即sql server 2012备份)在新的sql server (sql server 2014)中恢复。真正的问题与@marc_s的回答没有太大的不同。无论如何,我只是将目标文件夹更改为新的SQL Server DATA文件夹。

最近我用SQL 2008 R2遇到了这个问题,下面的解决方案对我有用:

1)创建一个与您试图恢复的数据库同名的新数据库 2)在恢复时,使用与上面使用的名称相同的选项,单击覆盖选项

如果其他解决方案不奏效,你可以尝试上面的方法。