1

我有由 Firebird 1.0 创建的 gdb 文件(另外 25GB 约 38GB)。在打开某些表期间,它们显示错误 [running Firebird Server 1.0 (stopped Interbase 7.5)]-> Invalid request BLR at offset 951 这是什么意思?

另外我想把它转换成 Interbase 7.5 它有 ODS 版本。10(通过 gstat -h)。

有任何想法吗 ??

4

2 回答 2

5

首先尝试检查数据库是否损坏并可能修复它:

gfix -mend -full -ignore -user SYSDBA -pas masterkey database.gdb

如果报告错误,则执行备份-恢复周期:

gbak -b -ig -g -user SYSDBA -pas masterkey server:database.gdb database.gbk

gbak -c -user SYSDBA -pas masterkey database.gbk server:new.gdb

如果还原失败,那么您需要在停用索引的情况下进行还原,并在以后一一激活它们:

gbak -c -i -n -o -user SYSDBA -pas masterkey database.gbk server:new.gdb

我相信 Firebird 1.0 是一个增强的 Interbase 6.0。因此,FB 1.0 的备份有可能使用 IB 7.5 恢复。如果不是,那么您总是有一个将数据库转储到 sql INSERT 命令的解决方案。

于 2012-04-04T12:38:52.410 回答
0

关于转Interbase——Firebird 1.0 ODS应该和当时的Interbase基本一样,所以你可以在FB下创建备份,在IB 7.5下恢复。如果这不起作用,您必须在 IB 中创建新的空数据库,然后使用Clever Component 的 Interbase DataPump或其他类似工具将数据从 FB“泵”到 IB。鉴于数据库的大小,无论哪种方式都将是一个漫长的等待......

抱歉,不知道错误 - 它可能表明数据库/某些表已损坏,或者只是您使用 IB 更改了数据库的元数据,现在 FB 不理解这些更改(因为 IB7.5 BLR 是可能与 FB1.0 不兼容)。

于 2012-04-04T12:35:45.433 回答