我的本地计算机上有test.bak
个文件。我需要将此文件还原到远程计算机的数据库。我该怎么做?
当我尝试这样做时,远程数据库会抛出一个错误,即它无法在本地文件系统上找到test.bak
。
查询
RESTORE DATABASE TESTPROJECT
FROM DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.ICON3\MSSQL\Backup\test.bak'
错误
Cannot open backup device 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.ICON3\MSSQL\Backup\test.bak'. Operating system error 2(The system cannot find the file specified.).
我怎样才能做到这一点?我正在使用Microsoft SQL Server 2008。
答案 0 :(得分:20)
在此答案的上下文中 - remote
指的是您的计算机,local
是数据库服务器。
从local
文件系统
将备份文件复制到local
文件系统,并直接从该副本恢复。
先决条件
test.bak
复制到服务器上的C:\test.bak
语法的
RESTORE DATABASE TESTPROJECT FROM DISK = N'C:\test.bak';
从remote
文件系统
或者,您可以使用UNC syntax从remote
备份文件恢复。我通常不使用此选项,但如果备份文件和已还原数据库的local
文件系统上没有足够的磁盘空间,则此选项很有用。
此选项的成功取决于某些变量 - 分配给数据库服务帐户的remote
文件系统的权限,网络运行状况等。
先决条件
Remote
计算机名称为remotemachine
remote
'C:\test.bak'
remote
管理员共享C$
语法的
RESTORE DATABASE TESTPROJECT FROM DISK = N'\\remotemachine\c$\test.bak';