我是 FirebirdSQL 新手。我无法连接到我的主机地址,但它可以成功连接到 localhost。它提示显示如下错误:
SQL> connect "192.168.1.50:/var/lib/firebird/2.5/data/employee.fdb" user 'SYSDBA' password 'masterkey';
Statement failed, SQLSTATE = 08006
Unable to complete network request to host "192.168.1.50".
-Failed to establish a connection.
我已经在 Google 上搜索了将近一周,但找不到解决这个问题的绝对方法。我的 ufw 防火墙已停用,端口 3050 已打开,但它仍然无法连接到我的主机地址,但可以轻松连接到 127.0.0.1。Firebird 经典服务器在 Lubuntu Desktop 14.04.1 上运行,Firebird 版本为 2.5。
自从我将操作系统从 13.xxx 重新安装/升级到 14.xxx Lubuntu 版本以来,就出现了此问题。在之前的操作系统上,我从未遇到过这样的错误。
这里出了什么问题?我不知道这个问题是否与操作系统版本有关,或者只是一个我无法解决的愚蠢错误,我非常需要专家的帮助。
如能得到任何帮助我将非常感激,提前谢谢。
答案1
我遇到了这个问题Ubuntu 16.04 LTS使用 Firebird 2.5.5 并解决如下问题:
作为具有足够权限的用户,编辑火鸟配置文件文件。
sudo -i
vi ./firebird/2.5/firebird.conf
搜索“bind”并阅读相关评论远程绑定地址。基本上,您必须反转 # 注释行,以允许网络访问比您自己/本地主机更远的机器。
调整 RemoteBindAddress 后,重新开始Firebird 服务/守护进程。
sudo service firebird2.5-super stop
sudo service firebird2.5-super start
然后尝试连接。我已经安装了示例文件,所以这个数据库名称对我有用:192.168.0.12:/var/lib/firebird/2.5/data/employee.fdb
注意:如果安装 FirebirdSQL 的机器位于防火墙后面,则必须打开端口 3050 才能让客户端连接。
答案2
您必须编辑文件“/etc/firebird/2.5/firebird.conf”并注释掉以下行:
RemoteBindAddress = localhost
像这样
#RemoteBindAddress = localhost
重启火鸟:
服务 firebird2.5-superclassic 重启
- 我使用的是超级经典版本
答案3
添加 Windows 防火墙设置。
去开始-->控制面板-->Windows 防火墙--> 转到例外标签-->单击添加程序-->并选择C:\Program Files\Firebird\Firebird_2_5\bin\fbguard.exe
同样的办法添加C:\Program Files\Firebird\Firebird_2_5\bin\fbserver.exe现在重启系统和检查从客户端到服务器的firebird连接。