本主题与包含多个文件或文件组的 SQL Server 数据库相关。
可以单独备份和还原 SQL Server 数据库中的文件。 此外,还可以指定整个文件组,而不是单独指定每个构成文件。 请注意,如果文件组中的任何文件处于脱机状态(例如,因为文件正在还原),则整个文件组处于脱机状态,无法备份。
只读文件组的文件备份可以与部分备份结合使用。 部分备份包括所有读/写文件组,以及(可选)一个或多个只读文件组。 有关详细信息,请参阅部分备份(SQL Server)。
文件备份可用作差异文件备份 的差异基础 。 有关详细信息,请参阅差异备份(SQL Server)。
注释
完整 文件备份通常称为文件备份,但与 差异文件备份显式比较时除外。
本主题内容:
文件备份的优点
文件备份比数据库备份具有以下优势:
使用文件备份可以提高恢复速度,只需还原损坏的文件,而不还原数据库的其余部分。
例如,如果数据库由位于不同磁盘上的多个文件组成,并且一个磁盘发生故障,则只需还原失败磁盘上的文件。 损坏的文件可以快速还原,恢复速度比整个数据库要快。
文件备份提高了对完整数据库备份的计划和媒体处理的灵活性,对于非常大的数据库来说,这种备份可能会变得不可管理。 文件或文件组备份的灵活性提高对于包含具有不同更新特征的数据的大型数据库也很有用。
文件备份的缺点
与完整数据库备份相比,文件备份的主要缺点是额外的管理复杂性。 维护和跟踪一组完整的这些备份可能是一项耗时的任务,可能超过完整数据库备份的空间要求。
如果损坏的文件缺少备份,则媒体故障会使完整数据库无法恢复。 因此,必须维护一组完整的文件备份,对于完整/大容量日志恢复模式,一个或多个日志备份几乎涵盖第一次完整文件备份和最后一次完整文件备份之间的间隔。
文件备份概述
完整文件备份将备份一个或多个文件或文件组中的所有数据。 默认情况下,文件备份包含足够的日志记录,以便将文件前滚到备份作的末尾。
对于每个恢复模式,备份只读文件或文件组是相同的。 在完整恢复模式下,一组完整的完整文件备份以及足够的日志备份来跨越所有文件备份,相当于完整数据库备份。
一次只能执行一个文件备份作。 可以在一个作中备份多个文件,但如果只需要还原单个文件,这可能会延长恢复时间。 这是因为要查找该文件,将读取整个备份。
注释
可以从数据库备份还原单个文件;但是,查找和还原文件所需的时间比从文件备份的数据库备份更长。
文件备份和简单恢复模式
在简单的恢复模式下,读取/写入文件必须全部备份在一起。 这可确保数据库可以还原到一致的时间点。 使用READ_WRITE_FILEGROUPS选项,而不是单独指定每个读/写文件或文件组。 此选项备份数据库中的所有读/写文件组。 通过指定READ_WRITE_FILEGROUPS创建的备份称为部分备份。 有关详细信息,请参阅部分备份(SQL Server)。
文件备份和完整恢复模式
在完整恢复模式下,无论备份策略的其余部分如何,都必须备份事务日志。 一组完整的完整文件备份,以及足够的日志备份,从第一个文件备份开始跨越所有文件备份,相当于完整数据库备份。
仅使用文件和日志备份还原数据库可能比较复杂。 因此,如果可能,最佳做法是执行完整数据库备份并在第一个文件备份之前启动日志备份。 下图显示了一种策略,即在创建数据库后(在时间 t0)后不久执行完整数据库备份。 第一个数据库备份使事务日志备份能够启动。 事务日志备份计划按设置间隔进行。 文件备份以最符合数据库业务要求的任何时间间隔进行。 此图显示四个文件组分别依次进行备份。 备份顺序(A、C、B、A)反映了数据库的业务要求。
注释
在完整恢复模式下,还原读/写文件备份时,必须前滚事务日志,以确保该文件与数据库的其余部分保持一致。 若要避免前滚大量事务日志备份,请考虑使用差异文件备份。 有关详细信息,请参阅差异备份(SQL Server)。
相关任务
创建文件或文件组备份
注释
维护计划向导不支持文件备份。
另请参阅
BACKUP (Transact-SQL)
备份概述 (SQL Server)
备份和还原:互作性和共存(SQL Server)
差异备份 (SQL Server)
文件还原 (简单恢复模式)
文件还原(完整恢复模式)
联机还原(SQL Server)
碎片还原 (SQL Server)