我使用 JetBeginExternalBackup API 编写了创建 ESENT 数据库完整备份的代码。
按照 MSDN 指南,我备份了 JetGetAttachInfo 和 JetGetLogInfo 返回的每个文件。
我已经进行了备份,删除了旧数据库,并将备份数据复制到数据库文件夹中。DB 引擎无法启动,JetInit 错误代码为“JET_errMissingLogFile”。
我检查了备份,它只包含数据库文件和“<inst>XXXXX.log”日志文件。它缺少当前的日志文件(我正在使用循环日志,顺便说一句)。
有没有办法恢复这样的备份?
我不想使用 JetExternalRestore API,因为它太复杂了:我不需要恢复到另一个位置,我不明白为什么有 3 个输入文件夹而不是 2 个,而且我不知道要提供的值在 genLow 和 genHigh 参数中。
我确实需要外部备份:ASP.NET 在远程服务器上使用 ESENT 数据库,我正在通过 Internet 对其进行备份。
或者,也许有一种方法可以检索当前日志文件的名称,我应该将它添加到备份中?
提前致谢!
PS 我没有权限跨我的网络服务器上的进程,所以使用 eseutil.exe 不是一个选项。