恢复到数据库快照

本主题讨论如何恢复到快照结果,说明恢复操作的限制,并提供指向恢复过程的链接。作为从备份中还原联机数据库的替代方法,任何对源数据库具有 RESTORE DATABASE 权限的用户均可将该数据库恢复到创建数据库快照时的状态。当联机源数据库中的数据损坏时,恢复到最近的快照可能比较合适。但是,请确保该快照是在发生错误之前创建的,并且数据库尚未损坏。例如,恢复操作可以恢复最近出现的严重用户错误,如删除表。

通过从稀疏文件中将写入时复制的页复制回源数据库,恢复操作将覆盖自快照创建以来对源数据库进行的更新。只有更新过的页才会被覆盖。恢复操作随后会覆盖旧的日志文件,并重建日志。因此,以后无法将恢复后的数据库前滚到出现用户错误时的状态,并且自快照创建以来对数据库进行的更改将丢失。恢复后的数据库的元数据与创建快照时的元数据相同。

恢复到某个快照还会删除所有全文目录。

对恢复的限制

下列情况不支持恢复:

  • 源数据库包含任何只读或压缩的文件组。

  • 某些在创建快照时处于联机状态的文件已脱机。

  • 当前存在多个数据库快照。

    只有要恢复的快照才可存在。

在恢复数据库之前,注意下列事项:

  • 从数据库快照恢复不适用于媒体恢复。与定期备份集不同,数据库快照并非数据库文件的完整副本。如果数据库或数据库快照已损坏,则可能无法从快照恢复。另外,如果损坏的话,即便可以恢复,也可能无法更正该问题。

  • 在恢复操作期间,快照和源数据库都不可用。源数据库和快照都将被标记为“正在还原”。如果在恢复操作期间出现错误,则当数据库再次启动时,恢复操作将会尝试完成恢复。

  • 由于成功的恢复操作会自动重建日志,因此 Microsoft 建议在恢复数据库之前备份日志。虽然不能还原原始日志以便将数据库前滚,但是可以使用原始日志文件中的信息来重新构造丢失的数据。

  • 恢复操作会打断日志备份链。因此,必须先对恢复的数据库进行完整数据库备份或文件备份,然后才能进行日志备份。Microsoft 建议进行完整数据库备份。