来自:http://msdn.microsoft.com/en-us/library/ms187495.aspx
示例:
- 恢复常规日志备份(来自备份集2)。
RESTORE LOG AdventureWorks2008R2
FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2008R2FullRM.bak'
WITH FILE=2,
NORECOVERY;
我的问题:如果我没有指定NORECOVERY
,它会是默认值吗?我有一堆以这种方式迁移的数据库,我不知道如何判断使用了哪种恢复模型。
由于
答案 0 :(得分:2)
RECOVERY是默认值。请参阅RESTORE命令的文档,其中指出:
RECOVERY和NORECOVERY的比较
回滚由RESTORE语句通过[ 恢复| NORECOVERY]选项:
NORECOVERY指定不会发生回滚。这允许滚动 转发继续序列中的下一个语句。
在这种情况下,还原序列可以还原其他备份并进行滚动 他们前进。
RECOVERY(默认值)表示应该执行回滚 完成当前备份前滚后。
恢复数据库需要整个数据集 已恢复(前滚集)与数据库一致。如果 前滚集还没有向前滚动到足够远 与数据库一致且指定了RECOVERY,数据库 引擎发出错误。