寫入器元資料檔案內容

寫入器元資料檔案包含三組資料:寫入器識別和分類資訊、寫入器層級規格和元件資料。

寫入器識別資訊

寫入器識別和分類資訊包括下列各項:

除了寫入器實例是唯一的,而且當 CVssWriter 物件初始化時,系統會產生唯一的寫入器實例,所有這些值都是由寫入器在呼叫 CVssWriter::Initialize 時設定,並透過呼叫 IVssExceptWriterMetadata::GetIdentity來提供給要求者使用。

因為寫入器實例是唯一產生的,所以從預存寫入器元資料檔案擷取的預存寫入器實例不太可能很有用。

藉由檢查 VSS_USAGE_TYPE,應用程式可以判斷寫入器是否正在管理一般應用程式資料,或其使用的檔案是否屬於系統的開機狀態,或由系統服務使用。 備份和還原應用程式需要遵守使用類型,以協助維護系統穩定性。

VSS_SOURCE_TYPE旗標指出寫入器管理要備份之資料的應用程式類型,會在正常作業期間執行。

目前,差別僅限於指定寫入器是否在交易或非交易式資料庫作業中產生檔案,或檔案是否為較一般活動類型的結果。 此清單可能會隨著時間成長。 這項資訊有助於判斷寫入器檔案中預期的一般活動層級。

Writer-Level規格

寫入器層級規格包含全寫入器範圍的資訊,套用至與其中一個元件管理它無關的所有資料。

寫入器必須一律指定 還原方法

它可以選擇性地指定下列專案:

include 和 exclude 檔案清單包含元件以外的檔案資訊,以及其規格取代元件規格。

還原方法規格

還原方法是由IVssCreateWriterMetadata::SetRestoreMethod在寫入器元資料檔案中設定,並由具有IVssEx,WriterMetadata::GetRestoreMethod的要求者擷取。

在設定還原方法時,寫入器會指出寫入器所管理之所有檔案的慣用檔案還原方式,也稱為原始還原目標。 例如,還原方法會指定是否允許寫入器管理的所有檔案覆寫目前磁片上的檔案。 (如需詳細資訊,請參閱 VSS 還原 設定和 VSS_RESTOREMETHOD_ENUM 。)

排除檔案清單規格

排除清單允許在元件中微調萬用字元規格,方法是明確地防止特定檔案包含在備份組中。

例如,元件可能有包含 c:\Database\*.*檔案規格的檔案 。 雖然這是方便的定義,但偶爾可能會產生暫存檔案, (可能是 *.tmp) 格式,而寫入器一律想要防止其備份。

在此情況下,寫入器會使用 IVssCreateWriterMetadata::AddExcludeFiles將 *.tmp 新增至其排除清單。 此規格可能會遞迴。

要求者會使用 IVssExriterMetadata::GetExcludeFile來查詢此資訊。

排除檔案清單的優先順序高於元件檔案清單。

因此,寫入器元資料檔案中為備份指定的檔案清單會包含 明確包含 元件中指定的所有檔案,以及 隱含包含 的元件,以及所有排除的檔案。

替代位置對應規格

建立寫入器元資料檔案期間一開始會設定替代位置對應,並指出無法還原檔案至原始位置時,磁片上可還原檔案的位置。

這項資訊會新增為以 Null 結尾的寬字元字串,其中包含 IVssCreateWriterMetadata::AddAlternateLocationMapping ,並由 IVssWMFiledesc 物件擷取為 IVssWMFiledesc 物件,由 IVssExlaiWriterMetadata::GetAlternateLocationMapping擷取。

雖然使用寫入器層級介面 (IVssCreateWriterMetadataIVssEx) 指定及檢查替代位置對應,但是會以 檔案集來指定它們。 用來指定替代位置對應的檔案集 (路徑、檔案規格和遞迴旗標) 必須符合已新增至其中一個寫入器元件的其中一個檔案集, (請參閱 將檔案新增至元件) 。

如需詳細資訊,請參閱 非預設備份和還原位置

Component-Level資訊

元件 是構成邏輯單元以供備份和還原之用的檔案集合。 元件中的所有檔案 (,但明確排除) 的檔案都必須備份並還原為單位。

寫入器會使用 IVssCreateWriterMetadata::AddComponent新增元件,並指定下列元件資訊:

  • 類型
  • 名稱
  • 如果有任何) ,則為邏輯路徑 (
  • 支援的功能
  • 可選取性
  • 還原期間寫入器要使用的中繼資料
  • 顯示資訊
  • 通知資訊

備份的可選取性還原的可選取性 完全獨立,而寫入器會將它們與邏輯路徑搭配使用,以指出所管理之各種元件之間的關聯性。 寫入器可以指出 明確包含 哪些元件 (可能會明確包含的要求者) ,以及只能 隱含包含的元件。 (請參閱 使用可選取性和邏輯路徑。)

檔案會使用 IVssCreateWriterMetadata::AddFilesToFileGroupIVssCreateWriterMetadata::AddDatabaseFilesIVssCreateWriterMetadata::AddDatabaseLogFiles新增至指定的元件。 (請參閱 將檔案新增至 Components.)

在備份期間將檔案新增至元件時,寫入器必須在定義要備份的檔案 (路徑、檔案規格和遞迴旗標) 指定檔案集。

寫入器也可以指定 備份的替代路徑 ,這不應該與先前所述的 替代位置對應 混淆。 這個替代路徑表示備份磁片區時,要從中複製檔案的非預設位置。

寫入器元資料檔案中指定元件的相關資訊可以透過 IVssWMComponent 介面取得,由 IVssEx,riterMetadata::GetComponent傳回。

檔案和路徑會以IVssWMFiledesc物件的形式在IVssWMComponent中傳回。

寫入器的元件資訊會在 寫入器定義元件中詳細討論。