SQL Server远程备份查询失败“无法打开备份设备”

SQL Server远程备份查询失败“无法打开备份设备”

我正在尝试将 MSSQL 数据库的计划备份配置到映射网络驱动器,该驱动器位于运行 Server 2003 Standard 的文件服务器上。查询内容如下:

BACKUP DATABASE XXXX
TO DISK = N'Z:\mssqlbk\XXXX.bak'
WITH CHECKSUM, STATS

返回的错误信息:

Msg 3201, Level 16, State 1, Line 1
Cannot open backup device 'Z:\mssqlbk\xxxx.bak'. Operating system error 3(The system cannot find the path specified.).
Msg 3013, Level 16, State 1, Line 1
BACKUP DATABASE is terminating abnormally.

我发现的大多数解决方案都认为 SQL 服务帐户存在权限错误(我使用名为 SQLBro 的帐户)。这是一个小型工作组网络,没有 AD。我尝试了以下方法:

  • 使用 Procmon 验证备份过程中进程所使用的数据库服务器上的用户帐户:SQLBro
  • 在文件服务器 SQLBro 上创建本地帐户,并将密码与数据库服务器上的帐户匹配
  • 为文件服务器上的 SQLBro 帐户添加了对文件服务器上的根卷和目标文件夹进行备份的权限。
  • 尝试将长 SQL 用户从默认备份位置添加到文件服务器,但名称对于标准添加本地用户界面来说太长(解决方法?)。
  • 尝试使用本地系统帐户而不是 SQLBro 在数据库服务器上运行服务。

每次都是同样的错误。我现在没有主意了,正在寻找解决方法。本地备份然后运行 ​​robocopy 或 xcopy 到映射驱动器是不是一个笨拙的方法?

答案1

可能是 SQL Server 进程不知道驱动器映射。您是否将驱动器映射为 SQL 服务帐户?

我建议在备份语句中将驱动器号路径更改为 UNC 路径。

答案2

在我的情况中我也遇到了同样的问题,最后我才知道是本地路径的错误。

实例正在另一个节点中运行,并且备份文件正在创建另一个节点...计划中提到的路径是Z:\VOLMNT04-SQLBACKUP\SQLBackup\SA***PD001-S2\TRN...为此我得到了同样的错误

Operating system error 3(The system cannot find the path specified.).
Msg 3013, Level 16, State 1, Line 1

然后我将路径改为\\SA***PD001-s25\SQLBackup\SA***PD001-S2\TRN然后执行成功

相关内容