Inhalt des Writer-Metadatendokuments
Das Writer Metadata Document enthält drei Sätze von Daten: Writer-Identifizierungs- und Klassifizierungsinformationen, Spezifikationen auf Writerebene und Komponentendaten.
Writer Identification Information (Informationen, die den Writer identifizieren)
Die Informationen zur Writer-Identifizierung und -Klassifizierung umfassen Folgendes:
- Name des Writers
- Writer-Klassen-ID
- Writer-instance
- Verwendung der vom Writer verwalteten Daten auf dem Hostsystem (siehe VSS_USAGE_TYPE)
- Der Typ der vom Writer verwalteten Daten (siehe VSS_SOURCE_TYPE)
Mit Ausnahme der Writer-instance, die eindeutig ist und vom System generiert wird, wenn ein CVssWriter-Objekt initialisiert wird, werden alle diese Werte von einem Writer festgelegt, wenn CVssWriter::Initialize aufgerufen wird, und sind für einen Anforderer verfügbar, indem IVssExamineWriterMetadata::GetIdentity aufgerufen wird.
Da die Writer-instance eindeutig generiert wird, ist ein gespeicherter Writer instance, der aus einem gespeicherten Writermetadatendokument abgerufen wird, wahrscheinlich nicht nützlich.
Durch die Überprüfung VSS_USAGE_TYPE kann eine Anwendung ermitteln, ob ein Writer allgemeine Anwendungsdaten verwaltet oder ob die Dateien, mit denen sie arbeitet, Teil des Startzustands des Systems sind oder von einem Systemdienst verwendet werden. Sicherungs- und Wiederherstellungsanwendungen müssen nutzungstypen berücksichtigen, um die Systemstabilität zu gewährleisten.
Das flag VSS_SOURCE_TYPE gibt an, welche Art von Anwendung der Writer, der die zu sichernden Daten verwaltet, während des normalen Betriebs ausführt.
Derzeit beschränkt sich die Unterscheidung auf die Angabe, ob der Writer Dateien im Rahmen transaktionaler oder nichttransaktionaler Datenbankvorgänge erzeugt oder ob die Dateien das Ergebnis einer allgemeineren Aktivitätsart sind. Diese Liste kann im Laufe der Zeit vergrößert werden. Diese Informationen können nützlich sein, um das normale Aktivitätsniveau zu bestimmen, das in den Dateien eines Writers erwartet wird.
Writer-Level Spezifikation
Spezifikationen auf Writerebene enthalten Informationen, die in ihrem Gültigkeitsbereich writerweit sind und sich auf alle Daten anwenden, unabhängig davon, welche Komponente sie verwaltet.
Ein Writer muss immer Wiederherstellungsmethoden angeben.
Optional kann Folgendes angegeben werden:
- Dateiliste ausschließen
- Alternative Speicherortzuordnungen für die Wiederherstellung
Die Listen zum Einschließen und Ausschließen von Dateien enthalten Dateiinformationen, die über die in den Komponenten hinausgehen, und ihre Spezifikation ersetzt die Komponentenspezifikation.
Spezifikation der Wiederherstellungsmethode
Die Wiederherstellungsmethode wird im Writer Metadata Document von IVssCreateWriterMetadata::SetRestoreMethod festgelegt und von einem Anforderer mit IVssExamineWriterMetadata::GetRestoreMethod abgerufen.
Beim Festlegen einer Wiederherstellungsmethode gibt ein Writer die bevorzugte Art der Dateiwiederherstellung an, die auch als ursprüngliches Wiederherstellungsziel bezeichnet wird, für alle Dateien, die von einem Writer verwaltet werden. Für instance gibt die Wiederherstellungsmethode an, ob alle dateien, die von einem Writer verwaltet werden, dateien, die derzeit auf dem Datenträger verwaltet werden, überschrieben werden sollen. (Weitere Informationen finden Sie unter VSS-Wiederherstellungskonfigurationen und VSS_RESTOREMETHOD_ENUM .)
Spezifikation der Dateiliste ausschließen
Die Ausschlussliste ermöglicht die Optimierung von Wildcard-Spezifikationen in Komponenten, indem explizit verhindert wird, dass bestimmte Dateien in einen Sicherungssatz eingeschlossen werden.
Für instance kann eine Komponente über einen Dateisatz verfügen, der die Dateispezifikation c:\Database\*.* enthält. Obwohl dies eine praktische Definition ist, können gelegentlich temporäre Dateien generiert werden (vielleicht im Format *.tmp), und der Writer möchte ihre Sicherung immer verhindern.
In diesem Fall würde ein Writer *.tmp seiner Ausschlussliste mithilfe von IVssCreateWriterMetadata::AddExcludeFiles hinzufügen. Diese Spezifikation kann rekursiv sein.
Ein Anforderer würde diese Informationen mithilfe von IVssExamineWriterMetadata::GetExcludeFile abfragen.
Die Liste der ausschließenden Dateien hat Vorrang vor Komponentendateienlisten.
Daher würde die Liste der Dateien, die für die Sicherung in einem Writer-Metadatendokument angegeben sind, aus allen Dateien bestehen, die in den explizit enthaltenen Komponenten und den implizit enthaltenen Komponenten angegeben sind, abzüglich aller ausgeschlossenen Dateien.
Spezifikation für alternative Standortzuordnungen
Alternative Speicherortzuordnungen werden anfänglich während der Erstellung eines Writer-Metadatendokuments festgelegt und geben einen Speicherort auf dem Datenträger an, an dem Dateien wiederhergestellt werden können, wenn die Wiederherstellung einer Datei am ursprünglichen Speicherort nicht möglich ist.
Die Informationen werden mit IVssCreateWriterMetadata::AddAlternateLocationMapping als NULL-endende Breitzeichenzeichenfolge hinzugefügt und von IVssExamineWriterMetadata::GetAlternateLocationMapping als IVssWMFiledesc-Objekt abgerufen.
Trotz der Tatsache, dass alternative Speicherortzuordnungen mithilfe der Schnittstellen auf Writerebene (IVssCreateWriterMetadata und IVssExamineWriterMetadata) angegeben und untersucht werden, werden sie in Form von Dateisätzen angegeben. Der Dateisatz, der bei der Angabe einer alternativen Speicherortzuordnung verwendet wird (Pfad, Dateispezifikation und Rekursionsflagge), muss mit einem der Dateisätze übereinstimmen, die bereits einer der Komponenten des Writers hinzugefügt wurden (siehe Hinzufügen von Dateien zu Komponenten).
Weitere Informationen finden Sie unter Nicht standardmäßige Sicherungs- und Wiederherstellungsspeicherorte.
Component-Level Informationen
Komponenten sind Sammlungen von Dateien, die eine logische Einheit zum Zweck der Sicherung und Wiederherstellung bilden. Alle Dateien in einer Komponente (mit Ausnahme der explizit ausgeschlossenen Dateien) müssen gesichert und als Einheit wiederhergestellt werden.
Writer fügen Komponenten mithilfe von IVssCreateWriterMetadata::AddComponent hinzu, wobei die folgenden Komponenteninformationen angegeben werden:
- type
- Name
- Logischer Pfad (falls vorhanden)
- Unterstützte Funktion
- Auswählbarkeit
- Metadaten, die vom Writer während der Wiederherstellung verwendet werden sollen
- Anzeigen von Informationen
- Benachrichtigungsinformationen
Die Auswählbarkeit für die Sicherung und die Auswahl für die Wiederherstellung sind völlig unabhängig voneinander, und ein Writer verwendet sie in Verbindung mit logischen Pfaden, um Beziehungen zwischen den verschiedenen von ihm verwalteten Komponenten anzugeben. Writer können angeben, welche Komponenten für explizit eingeschlossen werden (diejenigen, die explizit im Ermessen eines Anforderers eingeschlossen werden können) und welche Komponenten nur implizit eingeschlossen werden können. (Siehe Arbeiten mit Auswählbarkeit und logischen Pfaden.)
Dateien werden einer bestimmten Komponente mithilfe von IVssCreateWriterMetadata::AddFilesToFileGroup, IVssCreateWriterMetadata::AddDatabaseFiles oder IVssCreateWriterMetadata::AddDatabaseLogFiles hinzugefügt. (Siehe Hinzufügen von Dateien zu Komponenten.)
Beim Hinzufügen von Dateien zu einer Komponente während der Sicherung muss ein Writer einen Dateisatz (Pfad, Dateispezifikation und Rekursionsflag) angeben, der die zu sichernden Dateien definiert.
Writer können auch einen alternativen Pfad für die Sicherung angeben, der nicht mit den zuvor erwähnten alternativen Standortzuordnungen verwechselt werden sollte. Dieser alternative Pfad gibt einen nicht standardmäßigen Speicherort an, aus dem Dateien kopiert werden sollen, wenn ein Volume gesichert wird.
Informationen zu einer bestimmten Komponente im Writermetadatendokument können über eine IVssWMComponent-Schnittstelle abgerufen werden, die von IVssExamineWriterMetadata::GetComponent zurückgegeben wird.
Die Dateien und Pfade werden in IVssWMComponent als IVssWMFiledesc-Objekte zurückgegeben.
Die Komponenteninformationen eines Writers werden in Definition of Components by Writers ausführlich erläutert.