适用范围:SQL Server
通常,在恢复数据库之前,将还原 SQL Server 数据库中的所有数据。 但是,还原操作可以恢复数据库而不实际还原备份;例如,恢复那些与数据库一致的只读文件时。 这称为仅恢复还原。 当脱机数据已与数据库一致且仅需使其可用时,仅恢复还原操作即可完成数据库的恢复并将数据联机。
仅恢复还原操作可对整个数据库或一个或多个文件或文件组执行。
仅恢复数据库还原
仅恢复数据库还原在以下情况下很有用:
您在还原序列中还原最后一个备份时没有恢复数据库,现在希望恢复该数据库并使其联机。
数据库处于备用模式,但您希望在不应用其他日志备份的情况下可以更新数据库。
仅恢复数据库还原 RESTORE 语法如下所示:
RESTORE DATABASE *database_name* WITH RECOVERY
注意
FROM =<backup_device> 子句不用于仅执行恢复的还原操作,因为不需要备份。
示例
以下示例在还原操作中恢复 AdventureWorks2025 示例数据库而不还原数据。
-- Restore database using WITH RECOVERY.
RESTORE DATABASE AdventureWorks2022
WITH RECOVERY
仅恢复文件还原
在以下情况下,仅恢复文件的还原操作会很有用:
数据库被分段还原。 完成主文件组的还原之后,一个或多个未还原的文件变为与新数据库的状态一致,这也许是因为这些文件最近始终是只读的。 只需恢复这些文件即可;无需复制数据。
仅恢复还原作使脱机文件组中的数据联机;不会发生数据复制、重做或撤消阶段。 有关还原阶段的信息,请参阅还原和恢复概述 (SQL Server)。
仅恢复文件还原的 RESTORE 语法是:
RESTORE DATABASE *database_name* { FILE **=**_logical_file_name_ | FILEGROUP **=**_logical_filegroup_name_ }[ **,**...*n* ] WITH RECOVERY
示例
以下示例演示了 Sales 数据库中辅助文件组中 SalesGroup2 文件的仅恢复文件还原。 作为分段还原的初始步骤,主文件组已还原,并且 SalesGroup2 与已还原的主文件组保持一致。 只需一条语句即可恢复此文件组并使其变为联机状态。
RESTORE DATABASE Sales FILEGROUP=SalesGroup2 WITH RECOVERY;
使用仅恢复还原完成碎片还原方案的示例
简单恢复模式
完整恢复模式
另请参阅
联机还原 (SQL Server)
碎片还原 (SQL Server)
文件还原(简单恢复模式)
文件还原(完整恢复模式)
RESTORE (Transact-SQL)
还原和恢复概述 (SQL Server)