示例:读/写文件的联机还原(完整恢复模式)

本主题与完整恢复模式下包含多个文件或文件组的 SQL Server 数据库相关。

在此示例中,名为 adb 的数据库(使用完整恢复模式)包含三个文件组。 文件组 A 为读/写文件组,而文件组 B 和文件组 C 是只读的。 最初,所有文件组都处于联机状态。

文件组 A 中的文件 a1 似乎已损坏,数据库管理员决定在数据库处于联机状态时还原该文件。

注意注意

在简单恢复模式下,不允许联机还原读/写数据。

还原顺序

注意注意

联机还原顺序的语法与脱机还原顺序的语法完全相同。

  1. 联机还原文件 a1。

    RESTORE DATABASE adb FILE='a1' FROM backup 
    WITH NORECOVERY;
    

    此时,文件 a1 处于 RESTORING 状态,文件组 A 处于脱机状态。

  2. 完成文件还原之后,数据库管理员进行新的日志备份以确保捕获到该文件脱机时的点。

    BACKUP LOG adb TO log_backup3; 
    
  3. 联机还原日志备份。

    管理员还原自从还原了文件备份后一直到获得最新日志备份(在步骤 2 中创建的 log_backup3)所进行的所有日志备份。 还原最后一个备份之后,应当恢复数据库。

    RESTORE LOG adb FROM log_backup1 WITH NORECOVERY;
    RESTORE LOG adb FROM log_backup2 WITH NORECOVERY;
    RESTORE LOG adb FROM log_backup3 WITH NORECOVERY;
    RESTORE LOG adb WITH RECOVERY;
    

    文件 a1 现处于联机状态。

其他示例

请参阅

参考

BACKUP (Transact-SQL)

RESTORE (Transact-SQL)

概念

联机还原 (SQL Server)

段落还原 (SQL Server)

还原与恢复概述 (SQL Server)

应用事务日志备份 (SQL Server)