2012-06-20 95 views
0

我试图运行下面的查询来恢复数据库:SQL Server 2012中:麻烦恢复数据库备份

restore database myDatabase 
from disk= 
'C:\Program Files\Microsoft SQL Server\MSSQL11.SQLSERVER2012\MSSQL\Backup\myDatabase_backup_2012_06_20.bak' 
with replace, 

move 'myDatabase' to 
'C:\Program Files\Microsoft SQL Server\MSSQL11.SQLSERVER2012\MSSQL\DATA\myDatabase', 

move 'Analytics_log' to 
'C:\Program Files\Microsoft SQL Server\MSSQL11.SQLSERVER2012\DATA\myDatabase_log.ldf' 

而且正在以下错误:

Msg 5133, Level 16, State 1, Line 1 Directory lookup for the file
"C:\Program Files\Microsoft SQL Server\MSSQL11.SQLSERVER2012\DATA\myDatabase_log.ldf" failed with the operating system error 2(The system cannot find the file specified.).

Msg 3156, Level 16, State 3, Line 1 File 'myDatabase_log' cannot be restored to 'C:\Program Files\Microsoft SQL Server\MSSQL11.SQLSERVER2012\DATA\myDatabase_log.ldf'.
Use WITH MOVE to identify a valid location for the file.

对于第一个错误,似乎像SQL Server找不到.ldf文件。但是,它位于该位置,并且在.bak文件上运行restore filelistonly时已列在结果中。

+0

@Shenaniganz,你是对的!谢谢!如果你写出你的评论作为回应,我会将其标记为接受的答案。 – dmr

回答

1

你确定你的LDF文件没有被假设复制到:C:\ Program Files \ Microsoft SQL Server \ MSSQL11.SQLSERVER2012 \ MSSQL \ DATA \ myDatabase_log.ldf? ...注意你错过了MSSQL子文件夹。我说的是LDF文件路径可能无效。