Sql 数据库状态显示为';恢复';在很长一段时间内,当我使用NORECOVERY选项时

Sql 数据库状态显示为';恢复';在很长一段时间内,当我使用NORECOVERY选项时,sql,sql-server,database,database-backups,database-restore,Sql,Sql Server,Database,Database Backups,Database Restore,我有两个备份文件(MS SQL SERVER) 1) Demo.bak 2) 贝克先生 我想先恢复基本数据库(Demo.bak),然后恢复差异备份(DemoDiff.bak)。 因为我需要恢复差异数据库,所以我必须使用NORECOVERY选项恢复我的基础数据库。但是,当我使用NORECOVERY选项进行恢复时,数据库状态显示为“正在恢复”很长一段时间(实际上只有3519KB大小) 有人能帮我解决这个问题吗 还原是使用NORECOVERY进行还原后数据库的预期状态。然后可以应用事务日志备份或差异备

我有两个备份文件(MS SQL SERVER) 1) Demo.bak 2) 贝克先生

我想先恢复基本数据库(Demo.bak),然后恢复差异备份(DemoDiff.bak)。 因为我需要恢复差异数据库,所以我必须使用NORECOVERY选项恢复我的基础数据库。但是,当我使用NORECOVERY选项进行恢复时,数据库状态显示为“正在恢复”很长一段时间(实际上只有3519KB大小)


有人能帮我解决这个问题吗

还原是使用NORECOVERY进行还原后数据库的预期状态。然后可以应用事务日志备份或差异备份


恢复将数据库从恢复状态转换为联机状态。

您可以恢复日志文件,直到数据库处于无恢复模式。如果数据库已恢复,它将处于运行状态,并且可以继续数据库操作。如果数据库有另一个操作,我们将无法恢复进一步的日志,因为数据库恢复后的日志文件链毫无意义。这就是数据库在还原时必须处于norecovery状态的原因

有三种不同的方法可以恢复数据库

1) 使用以下命令手动恢复数据库

使用恢复功能还原数据库\u名称

2) 使用最后一个日志文件恢复数据库

使用恢复从备份设备还原日志数据库\u名称

3) 恢复bak时恢复数据库


使用恢复功能从备份设备还原数据库名称

您是通过向导还是TSQL执行此操作?我尝试了两种方法。它的行为也很正常。现在您需要恢复差异,这将使其处于联机状态。您应该阅读DocoTanks的回复,这里是我的问题,我需要在完整备份脚本之后运行差异备份脚本进行恢复。因此,我需要对完整备份还原脚本使用NORECOVERY选项。如果使用NORECOVERY选项,则数据库状态显示为正在恢复(而不是更改为其他状态)。数据库大小只有3159KB。那么你的问题又是什么呢?你能告诉我如何解决我的问题吗?从最近两天开始,数据库(非常小的数据库)状态显示为“正在恢复”状态。除非成功还原基本备份,否则无法还原差异备份。在还原完整备份之后和还原差异之前,数据库需要处于还原模式。请参见,我需要在完全备份后恢复差异备份。所以,我应该只使用NORECOVERY。如果我错了,请纠正我。