JetEndExternalBackupInstance 函数
适用于: Windows |Windows Server
JetEndExternalBackupInstance 函数
JetEndExternalBackupInstance 函数结束外部备份会话。 此 API 是一系列 API 中的最后一个 API,必须调用这些 API 才能成功执行联机 (基于 VSS 的非) 备份。
Windows XP:Windows XP 中引入了 JetEndExternalBackupInstance 。
JET_ERR JET_API JetEndExternalBackupInstance(
__in JET_INSTANCE instance
);
parameters
instance
用于此调用的实例。
Windows 2000: 对于 Windows 2000,接受此参数的 API 变体不可用,因为仅支持一个实例。 在本例中,这一全局实例的使用是隐含的。
Windowsxp: 对于 Windows XP 及更高版本,仅当引擎处于旧模式 (Windows 2000 兼容模式时,才能调用不接受此参数的 API 变体) 其中仅支持一个实例。 否则,操作将失败并出现JET_errRunningInMultiInstanceMode。
返回值
此函数返回具有以下返回代码之一 的JET_ERR 数据类型。 有关可能的 ESE 错误的详细信息,请参阅 可扩展存储引擎错误 和 错误处理参数。
返回代码 |
说明 |
---|---|
JET_errSuccess |
操作已成功完成。 |
JET_errBackupAbortByCaller |
Windowsxp: 此返回值在 Windows XP 中引入。 调用方在备份序列中间终止了备份,但未使用 JetStopBackup 发出意向信号。 此错误是由 Windows Server 2003 及更高版本中备份客户端中的 bug 导致的。 在 Windows XP 上,会因外部备份序列的有意终止而返回此错误。 |
JET_errBackupAbortByServer |
Windows Server 2003: 此返回值在 Windows Server 2003 中引入。 操作失败,因为调用 JetStopBackup 中止了当前外部备份。 |
JET_errClientRequestToStopJetService |
由于调用 JetStopService,与会话关联的实例上的所有活动都已停止,因此操作无法完成。 |
JET_errInstanceUnavailable |
Windowsxp: 此返回值在 Windows XP 中引入。 该操作无法完成,因为与会话关联的实例遇到一个致命错误,该错误要求撤销对所有数据的访问权限以保护该数据的完整性。 |
JET_errNoBackup |
操作失败,因为没有外部备份正在进行。 |
JET_errNotInitialized |
操作无法完成,因为与会话关联的实例尚未初始化。 |
JET_errRestoreInProgress |
该操作无法完成,因为正在对与会话关联的实例执行还原操作。 |
JET_errRunningInMultiInstanceMode |
操作失败,因为尝试在 Windows 2000 兼容模式 (旧模式下使用引擎,) 其中仅支持一个实例,但实际上已存在多个实例。 |
JET_errTermInProgress |
操作无法完成,因为正在关闭与会话关联的实例。 |
如果函数成功,则外部备份成功。 成功表示 (的所有文件(例如,适用于 JetBeginExternalBackup) 中指定的备份 (类型的数据库和日志) )都已从备份引擎中检索。 可以使用硬恢复 (JetExternalRestore) 恢复备份的文件。
如果此函数失败,外部备份通常会结束。 失败意味着由于客户端或应用程序使用错误,备份无效。 请务必检查此 API 的返回代码,以验证备份序列是否成功。
备注
如果引擎配置为记录事件,则会记录事件以指示外部备份的解决方法。
如果备份序列未按顺序完成,并且成功调用 JetEndExternalBackup,则后续增量备份可能包含比应用程序预期更多的数据。
有关外部备份 API 序列的详细信息,请参阅 JetBeginExternalBackup。
在 Windows Vista 之前,如果未执行日志截断,引擎会认为备份是副本备份。 但是,备份可能是未 (执行截断的正常备份,例如,如果存在) 分离的数据库。 JET_bitBackupTruncateDone选项可用于通知引擎此情况,并允许进行适当的数据库标头修改。
要求
要求 | 值 |
---|---|
客户端 |
需要 Windows Vista 或 Windows XP。 |
服务器 |
需要 Windows Server 2008 或 Windows Server 2003。 |
标头 |
在 Esent.h 中声明。 |
Library |
使用 ESENT.lib。 |
DLL |
需要ESENT.dll。 |
另请参阅
错误处理参数
可扩展存储引擎错误
JetAttachDatabase
JetBeginExternalBackup
JetBeginExternalBackupInstance
JetCloseFile
JET_ERR
JetExternalRestore
JetGetAttachInfo
JetGetLogInfo
JET_INSTANCE
JetOpenFile
JetReadFile
JetStopBackup
JetStopService
JetTruncateLog