示例:主文件组和一个其他文件组的离线还原(完整恢复模式)

显示蓝色数据库磁盘的图标 本主题仅适用于完整恢复模式下包含多个文件组的数据库。

在此示例中,名为 adb 的数据库包含三个文件组。文件组 AC 是读/写文件组,文件组 B 是只读的。主文件组和文件组 B 受损,但文件组 AC 完好无损。发生灾难性事件前所有文件组都处于在线状态。

数据库管理员决定还原和恢复主文件组及文件组 B。该数据库使用完整恢复模式,因此,开始进行还原之前必须先获取数据库的尾日志备份。数据库变为在线后,文件组 AC 将自动变为在线状态。

ms188687.note(zh-cn,SQL.90).gif注意:
只读文件的离线还原顺序的步骤比在线还原要少。有关示例,请参阅示例:在线还原只读文件(完整恢复模式)。但是,整个数据库在执行还原顺序期间处于离线状态。

尾日志备份

在还原数据库之前,数据库管理员必须备份日志尾部。由于数据库已损坏,因此创建尾日志备份需要使用 NO_TRUNCATE 选项:

BACKUP LOG adb TO tailLogBackup 
   WITH NORECOVERY, NO_TRUNCATE

尾日志备份是在以下还原顺序中应用的最后一个备份。

还原顺序

若要还原主文件组和文件组 B,数据库管理员可使用不带 PARTIAL 选项的还原顺序,如下所示:

RESTORE DATABASE adb FILEGROUP='Primary' FROM backup1 
WITH NORECOVERY
RESTORE DATABASE adb FILEGROUP='B' FROM backup2 
WITH NORECOVERY
RESTORE LOG adb FROM backup3 WITH NORECOVERY
RESTORE LOG adb FROM backup4 WITH NORECOVERY
RESTORE LOG adb FROM backup5 WITH NORECOVERY
RESTORE LOG adb FROM tailLogBackup WITH RECOVERY

未还原的文件将自动变为在线状态。此时,所有文件组都处于在线状态。

请参阅

概念

执行在线还原
执行段落还原
执行文件还原(完整恢复模式)
应用事务日志备份

其他资源

几个还原方案的还原顺序的示例
RESTORE (Transact-SQL)

帮助和信息

获取 SQL Server 2005 帮助