恢复包含序列的进度数据库

问题描述

我正在使用备份和映像后保存服务器数据库。 现在我想将此数据库恢复到我的本地电脑。

prorest db %network_drive%:%backupPath%\db.bk

rfutil %db_destination%\db -C 前滚 -ailist %network_drive%:%backupPath%\ai_db.lst

这很好用,除了数据库的序列,现在所有的序列都从 1 或可能是 0 开始。 寻找解决方案并不容易,因为一直出现的人工智能序列。

解决方法

当您成功恢复数据库时,序列也会恢复。它们与数据库的其余部分没有分开。

因此,如果序列尚未恢复,则某些事情失败了。 db.lg 文件应包含指向失败的消息。

也许问题是混淆,因为术语“序列”可以指两个不同的东西?

DB 序列是数据库模式的一部分,应用程序使用它来执行自动增加字段等操作。这些是数据库的一部分,将始终与 db 一起恢复。当您(成功)前滚后映像范围时,也将应用对其值的任何更新。

使用后映像序列号来组织归档后映像日志。每个 AI 日志文件都有一个关联的序列号,以确保它们以正确的顺序应用。如果您正在使用 AI 管理守护程序,该序列号是文件名的一部分。也可以通过尝试前滚文件来发现;如果您选择了错误的一个,错误消息会告诉您您尝试了哪个序列以及数据库希望您尝试什么。如果您通过自己的脚本而不是 AIMD 来管理盘区的归档,最好将 ai 序列号添加到文件名中。

每当您启用后成像时,AI 序列号都会重置。恢复数据库后映像被禁用后,您应该做的第一件事就是重新启用后映像。这将导致 ai 序列号在恢复的数据库上重新开始。