SQL Server:强制备份/还原位置

时间:2011-08-17 07:37:02

标签: sql-server backup restore

使用BACKUP DATABASE命令在笔记本电脑上获取SQL Server Express数据库的副本,现在我正尝试使用T-SQL语句将其还原到另一台计算机:

RESTORE DATABASE [OurDB]
FROM DISK = N'C:\Documents and Settings\Sam\Desktop\DBBackup\part1.bak',
DISK = N'C:\Documents and Settings\Sam\Desktop\DBBackup\part2.bak',
DISK = N'C:\Documents and Settings\Sam\Desktop\DBBackup\part3.bak',
DISK = N'C:\Documents and Settings\Sam\Desktop\DBBackup\part4.bak',
DISK = N'C:\Documents and Settings\Sam\Desktop\DBBackup\part5.bak',
DISK = N'C:\Documents and Settings\Sam\Desktop\DBBackup\part6.bak',
DISK = N'C:\Documents and Settings\Sam\Desktop\DBBackup\part7.bak',
DISK = N'C:\Documents and Settings\Sam\Desktop\DBBackup\part8.bak',
DISK = N'C:\Documents and Settings\Sam\Desktop\DBBackup\part9.bak',
DISK = N'C:\Documents and Settings\Sam\Desktop\DBBackup\part10.bak'
WITH REPLACE
GO

但是当它试图恢复我得到错误

  

Msg 5133,Level 16,State 1,Line 1
  目录查找文件“c:\ Program Files \ Microsoft SQL   Server \ MSSQL.1 \ MSSQL \ DATA \ AppConfig_Data.ndf“失败了   操作系统错误3(无法检索此错误的文本。   原因:1815)。

还有其他几个,都是类似的错误。问题是看起来SQL Server正在尝试将数据库还原到目录C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\,即备份源自源计算机上的数据目录。

但是在我要恢复到SQL Server数据路径的新计算机上是C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA

如何更改数据文件中的路径以使其恢复到正确的位置?

1 个答案:

答案 0 :(得分:2)

您需要在RESTORE命令中添加其他信息,以定义这些位应该去的位置 - 例如:

RESTORE DATABASE [OurDB]
FROM DISK = N'C:\Documents and Settings\Sam\Desktop\DBBackup\part1.bak',
MOVE N'Your_Data' TO N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA\OurDB.mdf',  
MOVE N'Your_Log' TO N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA\OurDB_Log.ldf'