Firebird备份在Windows上的两个安装失败

我有一个在端口3050上运行Firebird 2.5.4的Windows服务器,并且在端口3051上有另一个Firebird服务器旧版本。

出于兼容性原因,我使用3051服务器来处理其他应用程序。 我在需要时打开它,大部分时间都是通过Windows服务closures的。

但是,使用nbackup时备份现在失败。 命令是

nbackup.com -u sysdba -p PASSWORD -B 0 "C:\DATABASE.FDB" "X:\BACKUP.fbk" 

运行这个命令时失败:

 [ PROBLEM ON "attach database". unavailable database SQLCODE:-904 ] Failure: Database error 

通过isql进行连接同样会产生相同的问题。

 isql -u sysba -p PASSWORD "C:\DATABASE.FDB" Statement failed, SQLSTATE = 08001 unavailable database 

但是通过特定的连接主机和端口它工作正常。

 isql -u sysba -p PASSWORD "localhost/3050:C:\DATABASE.FDB" 

由于需要对数据库文件进行本地访问,因此将其应用于nbackup失败。

 nbackup.com -u sysdba -p PASSWORD -B 0 "localhost/3050:C:\DATABASE.FDB" "X:\BACKUP.fbk" [ PROBLEM ON "nbackup needs local access to database file". SQLCODE:-999 ] Failure: Database error 

是否有某种环境variables或configuration阻止nbackup正确访问数据库文件? 业务线应用程序没有问题连接,并对数据库进行更改。 两个实例上都没有firebird.log错误。 很奇怪。

您需要为每个Firebird服务器在firebird.conf中设置唯一的IpcName。 在这种情况下,他们都可以使用本地协议和nbackup.exe将工作成功。