Fonction JetExternalRestore2
S’applique à : Windows | Windows Server
Fonction JetExternalRestore2
La fonction JetExternalRestore2 restaure une sauvegarde externe effectuée avec les API de sauvegarde externe et fournit des points de contrôle à utiliser pour les opérations de journalisation circulaire. Il s’agit d’une récupération matérielle, qui est similaire, mais différente de la récupération réversible effectuée par la fonction JetInit .
Windows XP : JetExternalRestore2 est introduit dans Windows XP.
JET_ERR JET_API JetExternalRestore2(
__in JET_PSTR szCheckpointFilePath,
__in JET_PSTR szLogPath,
__in_opt JET_RSTMAP* rgrstmap,
__in long crstfilemap,
__in JET_PSTR szBackupLogPath,
__in_out JET_LOGINFO* pLogInfo,
__in_opt JET_PSTR szTargetInstanceName,
__in_opt JET_PSTR szTargetInstanceLogPath,
__in_opt JET_PSTR szTargetInstanceCheckpointPath,
__in JET_PFNSTATUS pfn
);
Paramètres
szCheckpointFilePath
Chemin d’accès pour le fichier de point de contrôle à utiliser pendant la récupération si szTargetInstanceCheckpointPath n’est pas spécifié ou si ce chemin a un instance actif ou en cours d’exécution.
szLogPath
Chemin ou répertoire des journaux pour la phase finale (annulation) de la récupération et éventuellement pour les journaux de restauration. Ce chemin d’accès peut être identique à szBackupLogPath.
rgrstmap
Il s’agit d’un tableau de structures JET_RSTMAP . Il s’agit d’une carte des chemins d’accès ou des noms de fichiers de base de données anciens et nouveaux. Cela est utilisé, car les bases de données peuvent avoir besoin d’être récupérées à un emplacement autre que l’emplacement à partir duquel elles ont été sauvegardées. Dans le cas où plusieurs bases de données sont attachées à un seul jeu de journalisation, la carte de restauration peut spécifier un sous-ensemble des bases de données à restaurer.
crstfilemap
Nombre d’entrées dans le paramètre de tableau rgrstmap .
szBackupLogPath
Chemin d’accès au répertoire dans lequel les fichiers journaux sont restaurés. Il s’agit des journaux qui ont été lus pendant la séquence de sauvegarde externe. Ce chemin d’accès peut être identique à szLogPath.
pLogInfo
Le pLogInfo décrit plusieurs aspects des journaux de sauvegarde à la récupération. Ce paramètre permet à JetExternalRestore2 de prendre les paramètres genLow et genHigh explicites de JetExternalRestore2 , ainsi que le nom du journal de base, au lieu d’un nom de base de journal présumé « edb ».
szTargetInstanceName
Ce paramètre est déconseillé et ne peut pas être utilisé dans votre application.
szTargetInstanceLogPath
Chemin d’accès pour les journaux de progression de la restauration si l’emplacement des journaux que vous souhaitez restaurer se trouve dans un ensemble de journaux de journalisation actif ou instance. Cela ne doit pas être spécifié si le instance cible utilise la journalisation circulaire.
szTargetInstanceCheckpointPath
Chemin d’accès du point de contrôle pendant la récupération s’il n’y a pas de instance actif en cours d’exécution sur cette cible. Cela ne doit pas être spécifié si le instance cible utilise la journalisation circulaire.
pfn
Le status rappel, qui indique la progression de la récupération.
Valeur renvoyée
Cette fonction retourne le type de données JET_ERR avec l’un des codes de retour suivants. Pour plus d’informations sur les erreurs ESE possibles, consultez Erreurs du moteur de stockage extensible et Paramètres de gestion des erreurs.
Code de retour |
Description |
---|---|
JET_errSuccess |
L’opération s’est terminée avec succès. |
JET_errBadRestoreTargetInstance |
Le szTargetInstanceLogPath spécifié n’appartient pas à un instance initialisé. Cette erreur sera retournée uniquement dans Windows XP et versions ultérieures. |
JET_errDatabaseCorrupted |
Cela indique que la base de données a été endommagée ou qu’un fichier n’est pas reconnu. |
JET_errEndingRestoreLogTooLow |
Cette erreur est retournée si l’un des fichiers journaux dans le szBackupLogPath a une génération de journal au-dessus de celle spécifiée dans genHigh ou pLogInfo.ulGenHigh. |
JET_errFileNotFound |
L’opération a échoué, car elle n’a pas pu ouvrir le fichier demandé, car il est introuvable au niveau du chemin spécifié. |
JET_errInvalidParameter |
L’un des paramètres fournis contenait une valeur inattendue ou contenait une valeur qui n’était pas logique lorsqu’elle était combinée à la valeur d’un autre paramètre. Cela peut se produire pour JetExternalRestore, et ainsi de suite lorsque szTargetCheckpointPath et szTargetInstanceLogPath ne sont pas tous deux spécifiés ou non spécifiés. Autrement dit, elles doivent correspondre et être spécifiées ou non spécifiées. |
JET_errInvalidPath |
L’opération a échoué, car le chemin spécifié est introuvable. |
JET_errOutOfMemory |
L’opération a échoué, car il n’est pas possible d’allouer suffisamment de mémoire pour la terminer. |
JET_errRestoreOfNonBackupDatabase |
Cette erreur est retournée si le fichier de base de données spécifié pendant la restauration n’est pas une base de données qui a été sauvegardée avec une sauvegarde externe. |
JET_errRunningInOneInstanceMode |
Le moteur de base de données ne peut pas exécuter de restauration externe ou de récupération matérielle en mode instance unique. Cette erreur sera retournée uniquement dans Windows XP et versions ultérieures. |
JET_errStartingRestoreLogTooHigh |
Cette erreur est retournée si l’un des fichiers journaux du szBackupLogPath a une génération de journal ci-dessous spécifiée par genLow ou pLogInfo.ulGenLow. |
En cas de réussite, toutes les bases de données du rgrstmap sont entièrement récupérées et dans un état propre ou cohérent. À ce stade, la base de données peut être remonté sur un instance existant.
En cas d’échec, le moteur n’a pas pu récupérer la base de données. La base de données n’est pas valide et, pour effectuer une nouvelle tentative de récupération en dur, la base de données entière doit être restaurée à nouveau. En règle générale, la source d’une telle situation est l’altération du disque ou du journal, ou une autre forme de mauvaise gestion des journaux, ou un jeu de journaux non continu.
Notes
Consultez JetExternalRestore.
Spécifications
Condition requise | Valeur |
---|---|
Client |
Nécessite Windows Vista ou Windows XP. |
Serveur |
Nécessite Windows Server 2008 ou Windows Server 2003. |
En-tête |
Déclaré dans Esent.h. |
Bibliothèque |
Utilisez ESENT.lib. |
DLL |
Nécessite ESENT.dll. |
Unicode |
Implémenté en tant que JetExternalRestore2W (Unicode) et JetExternalRestore2A (ANSI). |
Voir aussi
JET_ERR
JET_LOGINFO
JET_PFNSTATUS
JET_RSTMAP
JetBeginExternalBackup
JetExternalRestore
JetInit