使用備份的可選取性
下表描述可涉及備份作業的四種元件類型。
元件類型 | 描述 |
---|---|
Nonselectable-for-backup 元件 |
其邏輯路徑中沒有可選取的備份上階。 |
selectable-for-backup 元件 |
其邏輯路徑中沒有可選取的備份上階。 |
Nonselectable-for-backup 子元件 |
路徑中具有可選取備份上階的不可選取備份元件。 |
Selectable-for-backup 子元件 |
selectable-for-backup 元件在其路徑中具有 selectable-for-backup 上階。 |
此外,不論其是否具有可選取的備份上階,任何可選取的備份元件元件,如果其他元件在其邏輯路徑中將其設定為上階,都會定義 元件集 。
管理備份元件選取範圍的規則可以摘要如下:
當邏輯路徑中沒有可選取備份上階的任何元件,無論是可選取的備份或不可選取的備份,都會包含在備份中時,必須 明確包含該元件。 這表示這些元件的中繼資料會新增至備份元件檔。
要求者會使用 IVssBackupComponents::AddComponent 方法明確新增這些元件。
不可選取的備份子元件一律會 隱含地包含在 備份中。 這表示這些元件的中繼資料不是備份元件檔的一部分。
如果備份中明確包含該上階,則會隱含包含 select-for-backup 子元件。 在此情況下,這些元件的中繼資料不會新增至備份元件檔。 如果可隱含選取的備份子元件定義元件集,該元件集的成員也會隱含選取。
selectable-for-backup 子元件,其 selectable-for-backup 上階未明確包含在備份中,仍然可以由要求者使用 IVssBackupComponents::AddComponent 方法明確包含。 接著會將元件的中繼資料新增至備份元件檔。 此外,如果 selectable-for-backup 子元件定義元件集,該元件集的成員就會隱含包含在備份中。
元件 邏輯路徑 中所討論的「MyWriter」 案例可作為範例,以說明備份的可選取性。
元件名稱 | 邏輯路徑 | 可選取進行備份 |
---|---|---|
「可執行檔」 | "" | N |
「ConfigFiles」 | 「可執行檔」 | N |
「LicenseInfo」 | "" | Y |
"Security" | "" | Y |
「UserInfo」 | "Security" | N |
「憑證」 | "Security" | N |
「writerData」 | "" | Y |
「Set1」 | 「writerData」 | N |
「Jan」 | 「writerData\Set1」 | N |
「Dec」 | 「writerData\Set1」 | N |
「Set2」 | 「writerData」 | N |
「Jan」 | 「writerData\Set2」 | N |
「Dec」 | 「writerData\Set2」 | N |
「Query」 | 「writerData\QueryLogs」 | N |
「使用量」 | 「writerData」 | Y |
「Jan」 | 「writerData\Usage」 | N |
「Dec」 | 「writerData\Usage」 | N |
每當備份 「MyWriter」 時,使用 IVssBackupComponents::AddComponent 方法明確地包含 「ConfigFiles」 元件。
元件 「LicenseInfo」 是獨立的可選取備份元件。 您可以選擇使用 IVssBackupComponents::AddComponent 方法來選取要求者,但其選取專案將不會選取其他元件。
selectable-for-backup 元件 「Security」 會定義包含兩個不可選取的備份子元件、「UserInfo」 和 「Certificates」 的簡單元件集。 如果明確包含「安全性」以進行備份,則「UserInfo」和「憑證」一律也會隱含地包含。 除非包含 「Security」 ,否則無法將子元件 「UserInfo」 或 「Certificates」 包含在備份作業中。
如果選取元件 「writerData」,則會隱含選取不可選取的備份元件 「Set1」、「Set2」 和 「Query」,以及可選取的備份元件 「Usage」。 每個元件都有隱含選取進行備份的子元件。 其中繼資料都不會新增至備份元件檔。
如果未選取元件 「writerData」,則備份時不會包含不可選取的備份元件 「Set1」、「Set2」 和 「Query」。
不過,要求者可以選擇明確包含可選取的備份元件「使用量」。 此元件的中繼資料將會新增至備份元件檔。 「Usage」 的子元件 「Jan」 和 「Dec」 會隱含新增至備份,但不會將其資訊新增至備份元件檔。
明確包含備份的元件將會在備份元件檔中建立對應的 IVssComponent 實例。
要求者會檢查這些寫入器 (使用 IVssBackupComponents::GetWriterComponents) 包含在檔中的 IVssBackupComponents, 以及擷取儲存的 IVssComponent 物件,從其備份元件檔中擷取明確包含元件的相關資訊。
由於檔案集資訊 (檔案規格、路徑和遞迴旗標) 存在於備份元件檔中的元件,也不會顯示任何有關隱含新增元件的資訊,要求者必須查詢寫入器元資料檔案,以取得備份元件檔中包含的所有元件的完整資訊。