恢复数据库但不还原数据

 本主题仅适用于具有多个文件组的 SQL Server 数据库。

通常,数据在恢复之前已被还原。但是,您可以恢复数据库而不还原备份;例如,对于那些与数据库一致的只读文件。这称为“仅恢复还原”。当数据已与数据库一致并且只需变为可用时,应进行仅恢复还原。目的是完成恢复,并使受影响的数据变为联机状态。

仅恢复还原操作将脱机文件组中的数据变为联机状态;不会有数据复制、重做或撤消这些阶段。有关还原阶段的信息,请参阅了解 SQL Server 中备份的还原和恢复工作方式

仅恢复还原可以针对文件、文件组或整个数据库进行,如下所示:

  • 在以下情况下仅恢复文件还原十分有用:

    数据库按段落进行还原。完成主文件组的还原之后,一个或多个未还原的文件变为与新数据库的状态一致,这也许是因为这些文件最近始终是只读的。只需恢复这些文件即可;无需复制数据。

    仅恢复文件还原的 RESTORE 语法是:

    RESTORE DATABASE database_name { FILE **=**logical_file_name | FILEGROUP **=**logical_filegroup_name }[ ,...n ] WITH RECOVERY

  • 在以下情况下仅恢复数据库还原十分有用:

    • 对还原顺序中的最后备份进行还原时未恢复数据库,但现在希望恢复该数据库以使其变为联机状态。

    • 数据库处于备用模式,但您希望在不应用其他日志备份的情况下可以更新数据库。

    仅恢复数据库还原的 RESTORE 语法是:

    RESTORE DATABASE database_name WITH RECOVERY

注意注意

由于不需要使用备份,仅恢复还原不使用 FROM = <备份设备> 子句。

恢复数据库但不还原数据

示例

以下示例显示了 Sales 数据库中辅助文件组 SalesGroup2 中文件的仅恢复文件还原。已在段落还原的初始步骤中还原了主文件组,并且 SalesGroup2 与还原的主文件组一致。只需一条语句即可恢复此文件组并使其变为联机状态。

RESTORE DATABASE Sales FILEGROUP=SalesGroup2 WITH RECOVERY;

使用只恢复还原完成段落还原方案