Firebubin连接在Ubuntu 16.04 LTS中使用Firebird 3.0失败 - 错误:远程接口拒绝连接

时间:2016-05-06 23:44:05

标签: ubuntu firebird flamerobin firebird-3.0

我刚刚在Ubuntu 16.04 LTS中安装了Firebird 3.0。我可以从Windows计算机上使用Flamerobin连接到服务器。我还在服务器中安装了Flamerobin,以便能够在本地管理数据库,但是在注册服务器和数据库之后,连接失败了。 Flamerobin显示以下错误消息:

IBPP::SQLException
Context: Database::Connect,
Message: isc_attach_database failed,
SQL Message: -923, Connection not established,
Engine code: 335544421, Engine Message: connection rejected by remote interface.

您是否有解决此问题的建议并能够使用Flamerobin进行本地连接?

3 个答案:

答案 0 :(得分:6)

好的,在尝试配置Flamerobin以连接Firebird 3.0几天后,我终于可以做到了。

首先我们需要知道Flamerobin正在尝试加载哪个库。要知道它,我们使用以下命令:

ldd /usr/bin/flamerobin | grep libfb

输出:

libfbclient.so.2 => /usr/lib/x86_64-linux-gnu/libfbclient.so.2 (0x00007f48bb6f0000)

因此,Flamerobin加载了旧版本的客户端库。 Firebird 3.0的正确客户端库位于以下路径:

/opt/firebird/lib/libfbclient.so.3.0.0

经过几个小时的研究(我是Linux新手)后,我发现必须在正确的库和Flamerobin加载旧库的路径之间创建一个符号链接。为此,我输入以下命令(首先,我将旧库重命名为“libfbclient.so.2 _”):

sudo ln -s /opt/firebird/lib/libfbclient.so.3.0.0 /usr/lib/x86_64-linux-gnu/libfbclient.so.2

最后,再次执行Flamerobin,现在已连接。 @MarkRotteveel感谢您的线索。

答案 1 :(得分:0)

您需要运行服务fbguard。 (在firerobin之前安装Firebird)

我正在做这样的事情: $ cd / opt / firebird / bin / sudo ./fbguard

或者 $ cd / opt / firebird / bin / sudo ./fbguard -onetime -daemon

答案 2 :(得分:0)

优秀小费,AngelAvila。出现错误“引擎代码:335544421,引擎消息:远程接口拒绝连接。”

它对我有用。在我的具体情况下,必须做两件事:

  1. 由于文件/usr/lib/i386-linux-gnu/libfbclient.so.2已经存在,我将其重命名为libfbclient.so.2test

    sudo su
    mv . /usr/lib/i386-linux-gnu/libfbclient.so.2 > /usr/lib/i386-linux-gnu/libfbclient.so.2test

  2. 之后,对所使用的文件进行了两处修改(“... i386 -...”而不是“... x86-64 ...”和“... libfbclient.so.3.0。 1“而不是”... libfbclient.so.3.0.0“):

    sudo ln -s /opt/firebird/lib/libfbclient.so.3.0.1 /usr/lib/i386-linux-gnu/libfbclient.so.2

  3. 最后,数据库现已连接到Flamerobin。