【问题标题】:Restore Backup Access Denied还原备份访问被拒绝
【发布时间】:2012-04-30 04:03:12
【问题描述】:

我正在尝试将备份从 .bak 文件恢复到本地数据库服务器并不断收到错误消息。

执行 Transact-SQL 语句或批处理时发生异常。(Microsoft.SqlServer.ConnectionInfo)
无法打开备份设备“C:\Clients\SQLitis\jMKZ.bak”。操作系统错误 5(访问被拒绝。)。
RESTORE HEADERONLY 异常终止。 (Microsoft SQL Server,错误:3201)

甚至不知道从哪里开始解决此问题。我使用的是管理员帐户并且拥有完全权限,所以应该没有什么可以拒绝我这样做,但我仍然收到错误消息。

【问题讨论】:

  • @casperOne,当他们甚至没有相同的错误消息时,其他问题怎么可能与这个问题重复?

标签: sql-server backup restore database-restore


【解决方案1】:

听起来好像运行 SQL Server 的服务帐户没有文件夹 C:\Clients\SQLitis 的权限。

安装 SQL Server 时,希望它被设置为使用不是机器管理员的域用户帐户(“服务帐户”)。因此,SQL Server 安装程序仅授予对 SQL Server 安装程序创建的文件夹的权限。

【讨论】:

  • 是的,这就是问题所在。谢谢。
  • 我必须授予对文件夹和文件的服务帐户的权限。非常感谢!
  • 太棒了!为了允许服务帐户访问该文件,我右键单击该文件夹,在属性/安全性上添加了“所有人”。之后我可以恢复。
  • 对于每个遇到 LOG SHIPPING 问题并已将文件夹权限授予 SQL Server 代理用户以允许其将备份文件复制到该位置的人 - 这还不够,SQL Server DB引擎服务帐户也需要权限。这就是我刚刚爬出来的陷阱:)
  • 如果是这种情况,那么为什么不将模式改回混合模式,这样您也可以使用本地管理员的域帐户?可以在此处找到相关步骤:docs.microsoft.com/en-us/sql/database-engine/configure-windows/…
【解决方案2】:

您需要将该文件夹的权限授予 SQL Server 所充当的用户帐户。就我而言,它是 NT Service\MSSQLSERVER

您可以在 SQL Server 配置管理器中找到/更改 SQL Server 用户。这是一个显示如何操作的链接:

http://www.bidn.com/blogs/ShawnHarrison/ssis/2134/access-denied-during-database-backup

【讨论】:

    【解决方案3】:

    可能有点麻烦,但我通过将 .bak 文件复制到指定的备份文件夹中解决了这个问题。这样我就不必更改任何权限。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 2022-07-17
      • 2021-10-08
      • 2015-02-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多