我有一个firebird数据库的备份。我知道哪个版本的gbak已经制作了它以及哪个版本的firebird来自。
是否可以知道这些信息?
PS:我搜索了很多,但我没有找到解决方案;我找到的唯一解决方法是尝试使用不同版本的 firebird 和 gbak 进行恢复答案 0 :(得分:1)
Firebird版本的gbak
实用程序将能够读取早期版本的所有备份格式(理论上自InterBase 4.0以来,虽然不再进行测试)。因此,如果要恢复备份,只需使用最新版本的Firebird来恢复文件。
此外,如果您需要还原到较早的Firebird版本,则可以使用最新Firebird的gbak
。当恢复到较旧的Firebird版本时,它能够将新的备份格式恢复到较旧的服务器(尽管如果备份包含较新的Firebird版本的功能,那么这些部分将无法恢复或备份可能会失败,您还需要重新编译所有存储过程)。
唯一可能的障碍是备份来自不同的endian系统,并且备份不是可传输的(默认情况下是可传输的)。
答案 1 :(得分:0)
通常Firebird备份以External Data Representation(XDR)格式存储。
这意味着文件只包含XDR备份版本,而不包含Firebird版本甚至Gbak版本。备份版本与Firebird版本没有直接关系。
此外,XDR备份与FB版本兼容。如果您的数据库没有任何新的特定FB功能,您可以通过使用旧版本gbak恢复它来自由降级。