我正在使用命令:
在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文件。为什么它试图寻找不同的备份路径?洛尔
答案 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';