如何备份 SQL Server 数据库



在本地计算机上将SQL Server备份到服务器计算机时出现错误,但是如果我尝试查询本地数据库,它会起作用。你能帮我找出问题所在吗?

BACKUP DATABASE 'DBName' TO DISK 'FILENAME'

当我从本地 - MAIN 进行备份时出现此错误:

无法打开备份设备的"路径"。设备错误或设备脱机。备份数据库正在异常终止。

但是当我在本地机器上执行此操作时,它可以完美运行。

如果对 SQL Server 数据库进行备份,则必须记住,客户端会将命令/查询发送到 SQL Server 实例以执行该备份。因此,必须从服务器的角度考虑指定的所有路径。不是客户的。因此,在进行 SQL Server 备份时,'C:BackupMyDatabase.BAK'等本地路径将指向服务器的 C 盘,而不是您自己的客户端的 C 盘。

可以使用 UNC 路径(类似于'\SERVERShareBackup')将数据库备份到网络位置,但必须确保服务器(以及用于在服务器上运行 SQL Server 实例的用户帐户)对该网络位置具有足够的访问权限。

而且 - 同样 - 如果要使用到网络路径/别名的驱动器映射,则必须为 SQL Server 实例的用户帐户定义和访问它们;也许最好始终使用完整路径名在网络位置创建数据库备份。

希望这有所帮助。

编辑

我也总是对备份命令使用以下语法:

BACKUP DATABASE 'DBName' TO DISK = 'FILENAME'

请注意DISK后面的等号。没有它,您可能会收到语法错误。(我很快就对其进行了测试,并在SQL Server 2017中遇到了语法错误。

最新更新