不匹配的数据库还原路径

时间:2016-10-03 15:20:56

标签: sql-server

我正在使用命令:

在SSMS中恢复数据库
RESTORE DATABASE name
FROM DISK = '...' 
WITH REPLACE, STATS =25
(the path is an UNC path)

在sql server agent中作业运行良好之前,由于某些外部原因,此作业刚刚失败,现在无论我是尝试在SSMS命令窗口中运行查询还是在sql server agent中运行预定作业,它都给出了错误信息,说:

日志备份文件“D:...”的目录查找

恢复过程如何尝试在'D'驱动器而不是指定的UNC路径上查找.bak文件?我仔细检查了所有的.bak文件。为什么它试图寻找不同的备份路径?洛尔

1 个答案:

答案 0 :(得分:1)

备份数据库时,它会备份旧数据文件和日志文件的路径。因此,当您不指定还原路径时,它会尝试在当前服务器上的旧路径中还原它。

因此尝试提供显式命名并使用移动选项

使用冒险作品的示例

RESTORE DATABASE AdventureWorks2012  
   FROM AdventureWorksBackups  
   WITH NORECOVERY,   
      MOVE 'AdventureWorks2012_Data' TO   
'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\NewAdvWorks.mdf',   
      MOVE 'AdventureWorks2012_Log'   
TO 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\NewAdvWorks.ldf';