You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Firebird数据库连接localhost被拒绝(SQLCODE -902)的问题?

Firebird 2.0.1 连接失败排查思路

问题背景

过去两周一直通过isql提示符成功连接Firebird 2.0.1数据库,使用的连接字符串:

SQL> CONNECT "localhost:C:\Users\casa\Desktop\DB-Helper\PDVDATA.FDB" user 'SYSDBA' password 'masterkey';

今日突然无法连接,出现错误:

Statement failed, SQLCODE = -902
Unable to complete network request to host "localhost".
-Failed to establish a connection.
-无法建立连接,因为目标计算机主动拒绝了连接。

唯一变更:昨日Windows 8关机时自动完成系统更新,无其他安装或操作。

已尝试操作:

  • 在Windows防火墙高级安全中创建TCP 3050端口的入站、出站允许规则(命名为gds_db)
  • 执行telnet localhost 3050,返回:正在连接localhost...无法打开到主机的连接,在端口 3050: 连接失败
  • 另一台Ubuntu电脑执行相同telnet测试,结果一致

解决思路

  • 检查Firebird服务状态:Windows更新可能导致服务未自动启动。按Win+R输入services.msc打开服务列表,找到Firebird相关服务(通常为Firebird Guardian Default Instance或Firebird Server Default Instance),确认状态为「正在运行」。若未运行,手动启动并将启动类型设为「自动」。
  • 验证端口监听状态:执行netstat -ano | findstr :3050查看3050端口是否被监听。无结果则说明Firebird未正常启动监听,需查看Firebird日志(默认路径C:\Program Files\Firebird\Firebird_2_0\log)排查启动失败原因。
  • 检查服务运行权限:右键Firebird服务→「属性」→「登录」选项卡,确认运行账户(默认Local System)拥有数据库文件目录(C:\Users\casa\Desktop\DB-Helper)及Firebird安装目录的读写权限。
  • 尝试本地直连测试:修改连接字符串为本地路径形式:CONNECT "C:\Users\casa\Desktop\DB-Helper\PDVDATA.FDB" user 'SYSDBA' password 'masterkey';,若能连接则说明网络监听模块异常,可执行Firebird安装目录下bin\instsvc.exe的instsvc install命令重新注册服务。
  • 确认数据库文件权限:右键PDVDATA.FDB→「属性」→「安全」,确保Firebird服务账户(或Everyone)拥有该文件的读写权限。
  • 回滚系统更新:若以上操作无效,打开「控制面板」→「程序和功能」→「查看已安装的更新」,找到昨日安装的更新并卸载,重启后再次测试连接。

内容的提问来源于stack exchange,提问作者Tezcatlipoca0000

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 07:35:20