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

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

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

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


当前回答

在这个问题上也浪费了几个小时。尽管如此:

“拒绝访问”在我的情况下确实意味着“拒绝访问”。我的windows设备上的mssqlstudio用户帐户没有错误消息中指定的文件夹的完全控制权。我完全控制了它。访问不再被拒绝,恢复成功。

为什么档案室把文件夹锁起来了?谁知道呢?我已经有足够多的问题要解决了,不用再回答了。

其他回答

我也有同样的问题。原来我的SQL Server和SQL Server代理服务登录时在网络服务帐户下运行,该帐户没有执行备份恢复的写访问权。

我将这两个服务都更改为以本地系统帐户登录,这就解决了问题。

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

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

我最终为数据和日志制作了新的文件夹,它工作正常,一定是文件夹/文件权限问题。

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

在我的情况下,我必须仔细检查我正在恢复的数据库的备份路径。当我第一次做的时候,我已经从不同的路径恢复了它。我修复了备份路径,以使用我第一次使用的备份路径,它工作!