Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к: Windows | Windows Server
Функция JetExternalRestore2
Функция JetExternalRestore2 восстанавливает внешнюю резервную копию, созданную с помощью API внешних резервных копий, и предоставляет контрольные точки для циклических операций ведения журнала. Это называется жестким восстановлением, которое похоже, но отличается от мягкого восстановления, выполняемого функцией JetInit .
Windows XP: JetExternalRestore2 появилась в 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
);
Параметры
szCheckpointFilePath
Путь к файлу контрольной точки, используемому во время восстановления, если szTargetInstanceCheckpointPath не указан или этот путь имеет активный или запущенный экземпляр.
szLogPath
Путь или каталог для журналов для заключительного этапа (отмена) восстановления и, возможно, для журналов наката. Этот путь может совпадать с szBackupLogPath.
rgrstmap
Это массив JET_RSTMAP структур. Это карта старых и новых путей к базе данных или имен файлов. Это связано с тем, что базы данных может потребоваться восстановить в расположении, отличном от расположения, из который они были созданы для резервного копирования. В случае, когда несколько баз данных присоединены к одному набору ведения журнала, схема восстановления может указать подмножество баз данных для восстановления.
crstfilemap
Количество записей в параметре массива rgrstmap .
szBackupLogPath
Путь к каталогу, в котором восстанавливаются файлы журнала. Это журналы, которые были считаны во время внешней последовательности резервного копирования. Этот путь может совпадать с szLogPath.
pLogInfo
PLogInfo описывает несколько аспектов резервного копирования журналов для восстановления. Этот параметр позволяет JetExternalRestore2 принимать явные параметры genLow и genHigh, которые есть у JetExternalRestore2, а также базовое имя журнала вместо предполагаемого базового имени журнала "edb".
szTargetInstanceName
Этот параметр является устаревшим и не может использоваться в приложении.
szTargetInstanceLogPath
Путь к журналам наката, если расположение журналов, которые вы хотите выполнить, находится в активном наборе ведения журнала или экземпляре. Это не следует указывать, если целевой экземпляр использует циклическое ведение журнала.
szTargetInstanceCheckpointPath
Путь к контрольной точке во время восстановления, если на этом целевом объекте нет активного экземпляра. Это не следует указывать, если целевой экземпляр использует циклическое ведение журнала.
Pfn
Обратный вызов состояния, который сообщает о ходе восстановления.
Возвращаемое значение
Эта функция возвращает тип данных JET_ERR с одним из следующих кодов возврата. Дополнительные сведения о возможных ошибках ESE см. в разделах Ошибки подсистемы расширяемого хранилища и Параметры обработки ошибок.
Код возврата |
Описание |
|---|---|
JET_errSuccess |
Операция выполнена успешно. |
JET_errBadRestoreTargetInstance |
Указанный szTargetInstanceLogPath не принадлежит инициализированному экземпляру. Эта ошибка будет возвращена только в Windows XP и более поздних версиях. |
JET_errDatabaseCorrupted |
Это означает, что база данных повреждена или нераспознанный файл. |
JET_errEndingRestoreLogTooLow |
Эта ошибка возвращается, если один из файлов журнала в szBackupLogPath имеет выше поколение журнала, указанное в genHigh или pLogInfo.ulGenHigh. |
JET_errFileNotFound |
Операция завершилась сбоем, так как не удалось открыть запрошенный файл, так как его не удалось найти по указанному пути. |
JET_errInvalidParameter |
Один из предоставленных параметров содержал непредвиденное значение или значение, которое не имело смысла в сочетании со значением другого параметра. Это может произойти для JetExternalRestore и т. д., если szTargetCheckpointPath и szTargetInstanceLogPath либо не указаны, либо оба не указаны. Это значит, что они должны совпадать, и оба они должны быть указаны или оба не указаны. |
JET_errInvalidPath |
Операция завершилась сбоем, так как не удалось найти указанный путь. |
JET_errOutOfMemory |
Операция завершилась сбоем, так как для ее завершения не удалось выделить недостаточно памяти. |
JET_errRestoreOfNonBackupDatabase |
Эта ошибка возвращается, если файл базы данных, указанный во время восстановления, не является базой данных, резервной копией из внешней резервной копии. |
JET_errRunningInOneInstanceMode |
Ядро СУБД не может выполнять внешнее восстановление или жесткое восстановление в режиме одного экземпляра. Эта ошибка будет возвращена только в Windows XP и более поздних версиях. |
JET_errStartingRestoreLogTooHigh |
Эта ошибка возвращается, если один из файлов журнала в szBackupLogPath имеет поколение журнала ниже, указанное в genLow или pLogInfo.ulGenLow. |
При успешном выполнении все базы данных из rgrstmap полностью восстанавливаются и находятся в чистом или согласованном состоянии. На этом этапе базу данных можно повторно подключить к существующему экземпляру.
В случае сбоя подсистеме не удалось восстановить базу данных. База данных находится в недопустимом состоянии, и для повторного восстановления необходимо восстановить всю базу данных. Как правило, источником такой ситуации является повреждение диска или журнала, или какая-либо другая форма неправильного управления журналами или не непрерывный набор журналов.
Комментарии
См. статью JetExternalRestore.
Требования
| Требование | Значение |
|---|---|
Клиент |
Требуется Windows Vista или Windows XP. |
Сервер |
Требуется Windows Server 2008 или Windows Server 2003. |
Верхняя часть |
Объявлено в Esent.h. |
Библиотека |
Используйте ESENT.lib. |
DLL |
Требуется ESENT.dll. |
Юникод |
Реализовано как JetExternalRestore2W (Юникод) и JetExternalRestore2A (ANSI). |
См. также:
JET_ERR
JET_LOGINFO
JET_PFNSTATUS
JET_RSTMAP
JetBeginExternalBackup
JetExternalRestore
JetInit