示例:仅对某些文件组进行段落还原(完整恢复模式)
适用范围:SQL Server
本主题与完整恢复模式下包含多个文件或文件组的 SQL Server 数据库相关。
段落还原顺序将从主文件组和所有读写辅助文件组开始,按文件组级别分阶段还原和恢复数据库。
在此示例中,名为 adb
的数据库(使用完整恢复模式)包含三个文件组。 文件组 A
为读/写文件组,文件组 B
和文件组 C
为只读文件组。 最初,所有文件组都处于联机状态。
数据库 B
的主文件组和文件组 adb
显示为已损坏。 主文件组很小,可以快速还原。 数据库管理员决定使用段落还原顺序还原这些文件组。 首先,还原主文件组和后续事务日志,并恢复数据库。
完好的文件组 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 log_backup1 WITH NORECOVERY RESTORE LOG adb FROM log_backup2 WITH NORECOVERY RESTORE LOG adb FROM log_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)