SQL Server数据库备份:网络服务文件访问

时间:2010-03-25 14:47:41

标签: sql-server backup

尝试从我的代码运行以下数据库备份命令时,出现“操作系统错误5(访问被拒绝。)”错误。这是因为SQL Server Windows服务的登录帐户是“网络服务”,并且无权访问此文件夹。

BACKUP DATABASE [AE3DB] TO DISK = 'c:\AE3\backup\AE3DB.bak'

我的问题是,从我的代码中我将如何确定C驱动器上的“网络服务”在哪里可以正确备份?

注意:这是一个分布式应用程序,因此我无法轻松地将SQL Server Windows服务的登录更改为能够直接访问该文件夹的“本地系统”帐户。

2 个答案:

答案 0 :(得分:2)

您不会在C:\上搜索随机位置,其中SQL Server服务帐户具有写访问权限...

您可以选择:

  • 将备份放在SQL Server备份位置。这是在安装过程中指定的,并且它是正确的ACL,以便服务帐户具有所有必要的权限。请参阅http://msdn.microsoft.com/en-us/library/cc281941.aspx
  • 中的“备份目录”
  • 将备份放在创建的众所周知的位置, ACLit以获取SQL Server服务帐户的适当权限。您不应该授予服务帐户本身的权限(此casE中的NETWORK SERVICE),而是授予SQL Server管理服务组:SQLServerMSSQLUser$ComputerName$MSSQLSERVER。请参阅http://msdn.microsoft.com/en-us/library/ms143504.aspx

答案 1 :(得分:0)

网络服务帐户的重点是没有本地磁盘的权限。这可以防止基于网络的安全漏洞。

我的猜测是您的服务器被锁定,这意味着您必须在本地登录才能进行备份或使用管理帐户远程执行此操作。