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