本主题与包含多个文件或文件组的完整恢复模式下的 SQL Server 数据库相关。
逐段还原过程在文件组级别依次还原和恢复数据库,首先处理主文件组及所有读/写辅助文件组。
在此示例中,使用完整恢复模式命名 adb的数据库包含三个文件组。 文件组 A 是读/写的,文件组 B 和文件组 C 是只读的。 最初,所有文件组都处于联机状态。
数据库的主组和文件组Badb似乎已损坏。 主文件组相当小,可以快速还原。 数据库管理员决定使用逐段还原序列还原它们。 首先,将还原主文件组和后续事务日志,数据库将恢复。
完整的文件组 A 并 C 包含关键数据。 因此,它们将被立即恢复,以便尽快上线。 最后,已损坏的辅助文件组 B还原并恢复。
还原序列:
注释
联机还原序列的语法与脱机还原序列的语法相同。
创建数据库
adb的事务日志尾部备份。 此步骤对于使完好无损的文件组A和C与数据库恢复点保持最新状态至关重要。BACKUP LOG adb TO tailLogBackup WITH NORECOVERY主文件组的部分还原。
RESTORE DATABASE adb FILEGROUP='Primary' FROM backup WITH PARTIAL, NORECOVERY RESTORE LOG adb FROM backup1 WITH NORECOVERY RESTORE LOG adb FROM backup2 WITH NORECOVERY RESTORE LOG adb FROM backup3 WITH NORECOVERY RESTORE LOG adb FROM tailLogBackup WITH RECOVERY此时,主数据库处于联机状态。 文件组
A、B和C中的文件处于恢复挂起状态,并且文件组处于脱机状态。文件组
A和C. 的联机还原。由于数据未损坏,因此不必从备份还原这些文件组,但必须恢复它们才能使其联机。
数据库管理员立即恢复
A和C。RESTORE DATABASE adb FILEGROUP='A', FILEGROUP='C' WITH RECOVERY此时,主文件组和文件组
A和C处于联机状态。 文件组中B的文件保持恢复挂起,文件组处于脱机状态。文件组
B的联机还原。文件组
B中的文件可以在之后的任何时间恢复。注释
文件组的备份在文件组
B变为只读之后进行;因此,这些文件不必向前滚动。RESTORE DATABASE adb FILEGROUP='B' FROM backup WITH RECOVERY所有文件组现在都处于联机状态。
其他示例
另请参阅
BACKUP (Transact-SQL)
联机还原(SQL Server)
应用事务日志备份 (SQL Server)
RESTORE (Transact-SQL)
碎片还原 (SQL Server)