Funzione JetExternalRestore2
Si applica a: Windows | Windows Server
Funzione JetExternalRestore2
La funzione JetExternalRestore2 ripristina un backup esterno eseguito con le API di backup esterne e fornisce checkpoint da usare per le operazioni di registrazione circolare. Questa operazione è nota come ripristino rigido, che è simile ma diverso dal recupero software eseguito dalla funzione JetInit .
Windows XP: JetExternalRestore2 è stato introdotto in 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
);
Parametri
szCheckpointFilePath
Percorso del file del checkpoint da usare durante il ripristino se szTargetInstanceCheckpointPath non è specificato o il percorso ha un'istanza attiva o in esecuzione.
szLogPath
Percorso o directory per i log per la fase finale (annullamento) del ripristino ed eventualmente per i log di roll forward. Questo percorso può essere uguale a szBackupLogPath.
rgrstmap
Si tratta di una matrice di strutture JET_RSTMAP . Si tratta di una mappa di percorsi di database vecchi e nuovi o nomi file. Questa operazione viene usata perché i database potrebbero dover essere ripristinati in una posizione diversa dalla posizione da cui è stato eseguito il backup. Nel caso in cui più database siano collegati a un singolo set di registrazione, la mappa di ripristino può specificare un subset dei database da ripristinare.
crstfilemap
Numero di voci nel parametro della matrice rgrstmap .
szBackupLogPath
Percorso della directory in cui vengono ripristinati i file di log. Questi sono i log che sono stati letti durante la sequenza di backup esterna. Questo percorso può essere uguale a szLogPath.
pLogInfo
PLogInfo descrive diversi aspetti dei log di backup per il ripristino, questo parametro consente a JetExternalRestore2 di accettare i parametri genLow e genHigh espliciti che JetExternalRestore2 ha, nonché il nome del log di base, anziché un nome di base di log presunto di "edb".
szTargetInstanceName
Questo parametro è deprecato e non può essere usato nell'applicazione.
szTargetInstanceLogPath
Il percorso dei log di roll forward se il percorso dei log da eseguire il roll forward si trova in un set di registrazione o un'istanza attiva. Questa impostazione non deve essere specificata se l'istanza di destinazione usa la registrazione circolare.
szTargetInstanceCheckpointPath
Percorso del checkpoint durante il ripristino se non è presente alcuna istanza attiva in esecuzione in questa destinazione. Questa impostazione non deve essere specificata se l'istanza di destinazione usa la registrazione circolare.
Pfn
Callback di stato, che segnala lo stato di avanzamento del ripristino.
Valore restituito
Questa funzione restituisce il tipo di dati JET_ERR con uno dei codici restituiti seguenti. Per altre informazioni sui possibili errori ESE, vedere Errori del motore di archiviazione estendibile e parametri di gestione degli errori.
Codice restituito |
Descrizione |
---|---|
JET_errSuccess |
Operazione riuscita. |
JET_errBadRestoreTargetInstance |
L'oggetto szTargetInstanceLogPath specificato non appartiene a un'istanza inizializzata. Questo errore verrà restituito solo in Windows XP e versioni successive. |
JET_errDatabaseCorrupted |
Indica che il database è danneggiato o un file non riconosciuto. |
JET_errEndingRestoreLogTooLow |
Questo errore viene restituito se uno per i file di log in szBackupLogPath ha una generazione di log precedente specificata in genHigh o pLogInfo.ulGenHigh. |
JET_errFileNotFound |
L'operazione non è riuscita perché non è stato possibile aprire il file richiesto perché non è stato trovato nel percorso specificato. |
JET_errInvalidParameter |
Uno dei parametri forniti conteneva un valore imprevisto o conteneva un valore che non ha senso se combinato con il valore di un altro parametro. Questo problema può verificarsi per JetExternalRestore e così via quando szTargetCheckpointPath e szTargetInstanceLogPath non sono entrambi specificati o non entrambi non specificati. Ovvero, devono corrispondere e devono essere specificati o entrambi non specificati. |
JET_errInvalidPath |
L'operazione non è riuscita perché non è stato possibile trovare il percorso specificato. |
JET_errOutOfMemory |
L'operazione non è riuscita perché non è possibile allocare memoria sufficiente per completarla. |
JET_errRestoreOfNonBackupDatabase |
Questo errore viene restituito se il file di database specificato durante il ripristino non è un database di cui è stato eseguito il backup con backup esterno. |
JET_errRunningInOneInstanceMode |
Il motore di database non può eseguire il ripristino esterno o il ripristino rigido in modalità a istanza singola. Questo errore verrà restituito solo in Windows XP e versioni successive. |
JET_errStartingRestoreLogTooHigh |
Questo errore viene restituito se uno dei file di log in szBackupLogPath ha una generazione di log seguente specificata da genLow o pLogInfo.ulGenLow. |
In caso di esito positivo, tutti i database di rgrstmap vengono completamente recuperati e in uno stato pulito o coerente. A questo punto il database può essere rimontato in un'istanza esistente.
In caso di errore, il motore non è riuscito a recuperare il database. Il database è in uno stato non valido e per riprovare a ripristinare l'intero database deve essere ripristinato nuovamente. In genere, l'origine di una situazione di questo tipo è il danneggiamento del disco o del log o un altro tipo di gestione errata del log o un set di log non continuo.
Commenti
Vedere JetExternalRestore.
Requisiti
Requisito | Valore |
---|---|
Client |
Richiede Windows Vista o Windows XP. |
Server |
Richiede Windows Server 2008 o Windows Server 2003. |
Intestazione |
Dichiarato in Esent.h. |
Libreria |
Usare ESENT.lib. |
DLL |
Richiede ESENT.dll. |
Unicode |
Implementato come JetExternalRestore2W (Unicode) e JetExternalRestore2A (ANSI). |
Vedere anche
JET_ERR
JET_LOGINFO
JET_PFNSTATUS
JET_RSTMAP
JetBeginExternalBackup
JetExternalRestore
JetInit