火鸟远程连接失败

Firebird remote connection failure

我有一个用于从 Firebird SQL 服务器读取数据的 C++ 应用程序。

当我将端口从 3050 更改为 3053 时,它显示类似

的错误
DB Error : 0 : Unable to complete network request to host "192.168.1.47".
Failed to establish a connection.
unknown Win32 error 10060
Invalid connection string attribute

conf 文件更改为

# Type: string, integer
#
RemoteServiceName = gds_db
RemoteServicePort = 3053

Fb 连接字符串是

Driver=Firebird/InterBase(r) driver;DBNAME=192.168.1.47:CWNPFB;PORT=3053;UID=SYSDBA;PWD=********

是否需要修改才能解决这个问题?如果端口为 3050,应用程序可以读取数据。

您的防火墙配置是否适合端口 3053?此特殊端口上可能有另一项服务 运行。

您可以执行以下步骤。

  1. 尝试运行数据库服务器上的应用,请修改IP为127.0.0.1或localhost。

  2. 如果步骤 (1) 有效:检查防火墙

  3. 如果步骤(1)不起作用:也许尝试另一个端口,检查 Firebird 是否 运行ning

问题出在您的连接字符串上:

你需要

  1. 从连接字符串中删除 PORT=3053(这会导致 "Invalid connection string attribute" 消息)
  2. DBNAME=192.168.1.47:CWNPFB修改为DBNAME=192.168.1.47/3053:CWNPFB(指定正确的端口)

您可能还想注释掉(或删除)RemoteServiceName = gds_db 行,因为您现在指示 Firebird 监听 gds_db(== 端口 3050)和端口 3053。我相信它通常会监听配置文件中配置的最后一个,但我不确定情况是否总是如此。