编写器备份架构支持
若要完全实现备份,需要系统的编写者参与。 不同类型的受支持备份称为架构,由位掩码 (或 VSS_BACKUP_SCHEMA 枚举成员的按位 OR) 指示。 当前支持的有效架构包括:
默认架构:完整 (VSS_BS_UNDEFINED) — 指示编写器支持备份,无论文件的上次备份日期如何,都将备份所有文件。 每个文件的备份历史记录可由请求者更新,并且支持VSS_BS_TIMESTAMPED枚举值的编写器会随请求者一起存储更新后的时间戳。 此备份方案可用作增量备份或差异备份的基础。
还原完整备份只需要一个备份映像。
复制备份 (VSS_BS_COPY) (如VSS_BS_FULL备份架构)指示编写器支持备份,在该备份中,无论文件的上次备份日期如何,都将备份所有文件。 但是,请求者或编写者不会更新每个文件的备份历史记录,并且此类备份不能用作增量备份或差异备份的基础。
日志文件 (VSS_BS_LOG) - 仅备份编写器的日志文件。 这要求编写器使用 IVssCreateWriterMetadata::AddDatabaseLogFiles 方法将至少一个文件添加到至少一个组件。 此备份类型特定于 VSS。
自定义还原位置 (VSS_BS_WRITER_SUPPORTS_NEW_TARGET) - 指示请求者在还原文件时更改其文件的编写器支持。 这意味着编写器已使用 IVssComponent::GetNewTarget) 编码为检查此类重定位 (,并且能够处理重新定位的文件。
使用 Move (VSS_BS_WRITER_SUPPORTS_RESTORE_WITH_MOVE) 进行还原 - 指示编写器支持运行具有相同类 ID 的多个编写器实例,并且支持请求者在还原时将组件移动到其他编写器实例。 编写器实例是使用作为 wszWriterInstanceName 参数传递给 CVssWriter::Initialize 方法的持久编写器实例名称指定的。 请求者可以使用 IVssExamineWriterMetadataEx::GetIdentityEx 获取编写器实例名称,并在还原期间使用 IVssBackupComponentsEx::SetSelectedForRestoreEx 移动组件。
Windows Server 2003 和 Windows XP: 在 Windows Server 2003 Service Pack 1 (SP1) 之前,不支持此值。
增量 (VSS_BS_INCREMENTAL) — 指示编写器使用 VSS API 来帮助请求者,确保仅将自上次完整备份或增量备份以来已更改或添加的文件复制到存储介质。
还原增量备份需要原始备份映像和自初始备份以来创建的所有增量备份映像。
差异 (VSS_BS_DIFFERENTIAL) - 指示编写器使用 VSS API 帮助请求者确保仅将自上次完整备份以来已更改或添加的文件复制到存储介质;将忽略所有中间备份信息。
还原差异备份需要原始备份映像和自上次完整备份以来创建的最新差异备份映像。
增量/差异:时间戳支持 (VSS_BS_TIMESTAMPED) — 指示编写器支持使用 VSS 时间戳机制在增量或差异操作中包含文件。 在备份时,编写器必须使用 IVssComponent::SetBackupStamp 方法存储文件集的备份标记,并在还原时使用 IVssComponent::GetPreviousBackupStamp 检索它。
增量/差异:上次修改时间支持 (VSS_BS_LAST_MODIFY) — 指示使用差异文件实现增量备份或差异备份时,编写器可以单独提供上次修改时间信息。 可以通过 IVssComponent::AddDifferencedFilesByLastModifyTime 方法向请求者提供此信息。
增量/差异:支持限制 (VSS_BS_EXCLUSIVE_INCREMENTAL_DIFFERENTIAL) - 指示编写器支持差异或增量备份架构,但仅独占:例如,不能使用差异备份来跟踪增量备份。
独立系统状态 (VSS_BS_INDEPENDENT_SYSTEM_STATE) - 指示编写器支持备份属于系统状态的数据,但也可以独立于系统状态进行备份。
Windows Server 2003 和 Windows XP: 在 Windows Vista 之前不支持此值。
Roll-Forward还原 (VSS_BS_ROLLFORWARD_RESTORE) — 指示编写器支持请求者使用 IVssBackupComponentsEx2::SetRollForward 设置前滚还原点。
Windows Server 2003 和 Windows XP: 在 Windows Vista 之前不支持此值。
还原重命名 (VSS_BS_RESTORE_RENAME) — 指示编写器支持使用 IVssBackupComponentsEx2::SetRestoreName 设置还原名称的请求者。
Windows Server 2003 和 Windows XP: 在 Windows Vista 之前不支持此值。
权威还原 (VSS_BS_AUTHORITATIVE_RESTORE) — 指示编写器支持使用 IVssBackupComponentsEx2::SetAuthoritativeRestore 设置授权还原。
编写器使用 IVssCreateWriterMetadata::SetBackupSchema 方法设置其架构,请求者通过调用 IVssExamineWriterMetadata::GetBackupSchema 获取每个编写器的架构。