JetBackup-Funktion
Gilt für: Windows | Windows Server
JetBackup-Funktion
Die JetBackup-Funktion erstellt eine Sicherung der Datenbank, während die Datenbank online ist. Diese Funktion dient in erster Linie der Abwärtskompatibilität mit Windows 2000 und früheren Datenbank-Engines, wobei nur eine Instanz einer Datenbank zulässig ist. In diesem Fall ist die aktive Instanz die Instanz, die gesichert wird.
JET_ERR JET_API JetBackup(
__in JET_PCSTR szBackupPath,
__in JET_GRBIT grbit,
__in JET_PFNSTATUS pfnStatus
);
Parameter
szBackupPath
Das Verzeichnis, in dem die Sicherung gespeichert wird. Wenn der Sicherungspfad NULL ist, werden die Protokolle nach Möglichkeit von der Funktion abgeschnitten.
grbit
Eine Gruppe von Bits, die null oder mehr der folgenden Optionen angibt.
Wert |
Bedeutung |
|---|---|
JET_bitBackupAtomic |
Erstellt eine vollständige Sicherung der Datenbank. Dies ermöglicht die Beibehaltung einer vorhandenen Sicherung im gleichen Verzeichnis, wenn bei der neuen Sicherung ein Fehler auftritt. |
JET_bitBackupIncremental |
Erstellt eine inkrementelle Sicherung im Gegensatz zu einer vollständigen Sicherung. Dies bedeutet, dass nur die Protokolldateien seit der letzten vollständigen oder inkrementellen Sicherung gesichert werden. |
pfnStatus
Zeiger auf die JET_PFNSTATUS Rückruffunktion, die Benachrichtigungsinformationen zum Fortschritt des Sicherungsvorgangs bereitstellt.
Rückgabewert
Die Funktion gibt einen der JET_ERR Fehlercodes zurück. Die folgenden werden am häufigsten zurückgegeben. (Eine vollständige Liste der Fehler für diese API finden Sie unter Extensible Storage Engine Error Codes.)
Rückgabecode |
Beschreibung |
|---|---|
JET_errSuccess |
Der Vorgang wurde erfolgreich abgeschlossen. |
JET_errBackupInProgress |
Für dieselbe Instanz wird bereits eine Sicherung ausgeführt. Mehrere Sicherungen sind nicht gleichzeitig zulässig. |
JET_errBackupNotAllowedYet |
Die Instanz ist noch nicht für die Sicherung bereit, da sie initialisiert wird. |
JET_errClientRequestToStopJetService |
Der Vorgang kann nicht abgeschlossen werden, da alle Aktivitäten in der Instanz, die der Sitzung zugeordnet ist, aufgrund eines Aufrufs von JetStopServicebeendet wurden. |
JET_errInstanceUnavailable |
Der Vorgang kann nicht abgeschlossen werden, da für die der Sitzung zugeordnete Instanz ein schwerwiegender Fehler aufgetreten ist, der erfordert, dass der Zugriff auf alle Daten widerrufen wird, um die Integrität dieser Daten zu schützen. Windows XP: Dieser Rückgabewert wird in Windows XP eingeführt. |
JET_errInvalidBackup |
Eine inkrementelle Sicherung ist nicht zulässig, wenn die zirkuläre Protokollierung eingeschaltet ist. |
JET_errInvalidGrbit |
Die angegebenen Optionen sind ungültig. |
JET_errInvalidParameter |
Ein ungültiger Parameter wurde an die API übergeben. |
JET_errInvalidPath |
Der Zielpfad ist nicht vorhanden. |
JET_errLoggingDisabled |
Die Instanz wird ohne Protokollierung ausgeführt. Es ist keine Sicherung zulässig. |
JET_errLogReadVerifyFailure |
In einer Protokolldatei ist ein Prüfsummenüberprüfungsfehler aufgetreten. |
JET_errLogWriteFail |
Die Protokollierung für die Instanz ist aufgrund eines unerwarteten Fehlers temporär oder dauerhaft deaktiviert. |
JET_errNotInitialized |
Der Vorgang kann nicht abgeschlossen werden, da die der Sitzung zugeordnete Instanz noch nicht initialisiert wurde. |
JET_errReadVerifyFailure |
Auf einer Datenbankseite ist ein Prüfsummenüberprüfungsfehler aufgetreten. |
JET_errRestoreInProgress |
Der Vorgang kann nicht abgeschlossen werden, da ein Wiederherstellungsvorgang für die Instanz ausgeführt wird, die der Sitzung zugeordnet ist. |
JET_errSessionSharingViolation |
Dieselbe Sitzung kann nicht für mehrere Threads gleichzeitig verwendet werden. Windows XP: Dieser Rückgabewert wird in Windows XP eingeführt. |
JET_errTermInProgress |
Der Vorgang kann nicht abgeschlossen werden, da die der Sitzung zugeordnete Instanz heruntergefahren wird. |
Wenn die Funktion erfolgreich ausgeführt wird, sind alle Dateien, die für eine Wiederherstellung bis zum Zeitpunkt der Sicherung erforderlich sind, im Sicherungsverzeichnis enthalten. Wenn es sich um eine vollständige Sicherung handelt, sind die Dateien die Datenbankdateien und die Protokolldateien, die benötigt werden, um die Datenbank in einen konsistenten Zustand zu bringen. Wenn es sich um eine inkrementelle Sicherung handelt, werden den Verzeichnissen nur Protokolldateien hinzugefügt, aber die bereits vorhandenen Dateien (Datenbanken und Protokolldateien) können zusammen mit den neuen Protokolldateien wiederhergestellt werden, um die Datenbank wieder in den Zustand zu bringen, in dem sie sich zu dem Zeitpunkt befand, zu dem die Sicherung begonnen hat.
Als Nebeneffekt der Sicherung werden die Protokolldateien abgeschnitten, die nicht mehr benötigt werden.
Gleichzeitig werden die Datenbankheader mit den Informationen aktualisiert, als die letzte Sicherung durchgeführt wurde.
Wenn die Funktion fehlschlägt, sind keine Dateien im Sicherungsverzeichnisziel vorhanden, sodass keine Wiederherstellung möglich ist. Gleichzeitig werden die aktuellen Protokolldateien nicht abgeschnitten.
Hinweise
Für die verschiedenen Schritte der Sicherung werden Ereignisprotokolleinträge generiert, einschließlich der Dateinamen, der Protokollkürzung und des Endergebnisses der Sicherung.
Inkrementelle Sicherungen sind erst möglich, nachdem eine vollständige Sicherung erstellt wurde. Inkrementelle Sicherungen sind auch nur möglich, wenn die zirkuläre Protokollierung deaktiviert ist. Es wird empfohlen, dass das Sicherungsverzeichnis keine anderen Dateien als die datei enthält, die in der Sicherung verwendet oder von einer vorherigen erfolgreichen Sicherung hinzugefügt wurde.
Das Sicherungsverzeichnis sollte vorhanden sein, es sei denn, der Parameter JET_paramCreatePathIfNotExist für die Instanz festgelegt ist. Weitere Informationen finden Sie unter Systemparameter.
Die Sicherung führt eine Prüfsummenüberprüfung auf allen verwendeten Datenbankseiten durch und beginnt mit Windows Server 2003 auch in den Protokolldateien. Dies bietet die Möglichkeit, die Integrität der Datenbank zu schätzen, auch für Seiten, die während des normalen Betriebs nicht gelesen werden. Wenn eine solche Beschädigung auftritt, schlägt die Sicherung fehl.
Während der Sicherung wird die aktuelle Protokolldatei abgeschlossen, und es wird ein neues Protokoll generiert. Auf diese Weise können alle erforderlichen Protokolldateien Kopien sein, da das aktuelle Protokoll nicht mehr verwendet wird.
Es wird dringend empfohlen, die Sicherung nicht für andere Zwecke als die Sicherung und Wiederherstellung auf Engine-Ebene zu verwenden. Dadurch wird die Wahrscheinlichkeit minimiert, dass während der Sicherungs- und Wiederherstellungsvorgänge Fehler auftreten.
Anforderungen
| | |
Client
|Erfordert Windows Vista, Windows XP oder Windows 2000 Professional.
| |Server
|Erfordert Windows Server 2008, Windows Server 2003 oder Windows 2000 Server.
| |Header
|Deklariert in Esent.h.
| |Bibliothek
|Verwenden Sie ESENT.lib.
| |DLL
|Erfordert ESENT.dll.
| |Unicode
|Wird als JetBackupW (Unicode) und JetBackupA (ANSI) implementiert.
|Weitere Informationen
Erweiterbare Storage-Engine-Dateien
JET_ERR
JET_GRBIT
JET_INSTANCE
JET_PFNSTATUS
JetRestore
JetRestore2
JetRestoreInstance
JetStopService
Systemparameter