2013-01-17 148 views
1

后,我试图从SQL Management Studio中创建.bak文件2012数据库被“恢复”恢复

RESTORE DATABASE db 
    FROM DISK = 'd:\abc.bak' 
    WITH NORECOVERY, 
    MOVE 'abc' TO 'D:\My Data\db_Data.mdf', 
    MOVE 'abc_log' TO 'd:\My data\db_Log.ldf', 
    REPLACE 
GO 

它经历了后来无法打开数据库还原数据库时,总有恢复...名称上的状态。

这是怎么回事?

回答

1

数据库保持恢复状态,正在等待其他日志恢复。使用WITH RECOVERY来完成还原。

1

作为还原过程的一部分,您需要使用WITH RECOVERY选项和数据库RESTORE命令使数据库从恢复模式联机。

您还可以使用覆盖选项WITH REPLACE

RESTORE DATABASE db 
    FROM DISK = 'd:\abc.bak' 
    WITH REPLACE, RECOVERY 
    MOVE 'abc' TO 'D:\My Data\db_Data.mdf', 
    MOVE 'abc_log' TO 'd:\My data\db_Log.ldf' 
GO 

这是最可靠方法来恢复数据库。