将.bak文件还原到远程数据库

2022-03-07 00:00:00 sql sql-server ssms
我的本地计算机中有一个test.bak文件。我需要将此文件恢复到远程计算机的数据库。我该怎么做?

当我尝试此操作时,远程数据库抛出无法在本地文件系统上找到test.bak的错误。

查询

RESTORE DATABASE TESTPROJECT 
FROM DISK = 'C:Program FilesMicrosoft SQL ServerMSSQL10_50.ICON3MSSQLBackup	est.bak'

错误

Cannot open backup device 'C:Program FilesMicrosoft SQL ServerMSSQL10_50.ICON3MSSQLBackup	est.bak'. Operating system error 2(The system cannot find the file specified.).

我如何才能实现这一点?我正在使用Microsoft SQL Server 2008。


解决方案

在此答案的上下文中-remote是指您的计算机,local是数据库服务器。


local文件系统还原

将备份文件复制到local文件系统,然后直接从此副本还原。

先决条件

  • test.bak复制到服务器上的C: est.bak

语法

RESTORE DATABASE TESTPROJECT FROM DISK = N'C:	est.bak';

remote文件系统还原

或者,您也可以使用UNC syntax从remote备份文件还原。我通常不使用此选项,但如果local文件系统上没有足够的磁盘空间用于备份文件和还原的数据库,则此选项很有用。

此选项的成功取决于某些变量-分配给数据库服务帐户的remote文件系统上的权限、网络运行状况等。

先决条件

  • Remote计算机名称为remotemachine
  • 备份位于remote'C: est.bak'
  • 数据库服务帐户有权访问remote管理员共享C$

语法

RESTORE DATABASE TESTPROJECT FROM DISK = N'\remotemachinec$	est.bak';

相关文章