如何通过FireDAC访问局域网另一台电脑上的Firebird数据库?
报错信息
Failed to connect to DBMS !
[FireDAC][Phys][FB]unavailable database
排查步骤
- 确认远程Firebird服务状态:远程电脑上的
Firebird Guardian - DefaultInstance或Firebird Server - DefaultInstance服务必须处于运行状态,可通过系统服务管理器检查。 - 验证数据库文件权限与路径:
- 远程数据库文件(
.fdb)所在文件夹需给Firebird用户或Everyone设置读写权限,避免权限不足导致无法访问。 - 连接字符串中的数据库路径必须使用远程可访问路径:比如远程电脑D盘下的
test.fdb,要写成\\远程IP或主机名\D$\test.fdb;若Firebird配置了数据库别名,直接填写别名即可。
- 远程数据库文件(
- 检查端口连通性:
- Firebird默认监听3050端口,用
telnet 远程IP 3050或PowerShell命令Test-NetConnection 远程IP -Port 3050测试端口是否能通,若不通需排查第三方安全软件(部分杀毒软件自带网络防护)。 - 确认远程Firebird配置文件
firebird.conf中RemoteServicePort参数为3050,未被修改。
- Firebird默认监听3050端口,用
- 核对FireDAC连接配置:
- 驱动选择
FB,服务器地址填写远程电脑的IP或主机名,端口保持默认3050。 - 数据库路径务必正确,禁止使用本地路径(如
D:\test.fdb)。 - 确认用户名(默认
sysdba)和密码(默认masterkey)输入正确,注意大小写区分。
- 驱动选择
- 用原生工具测试连接:先用Firebird自带的
isql工具验证基础连接,执行命令:
若isql -user sysdba -password masterkey -host 远程IP/主机名 "远程数据库路径或别名"isql也无法连接,问题出在Firebird本身配置;若isql能连接,再排查FireDAC的配置细节。
内容的提问来源于stack exchange,提问作者Adel
相关产品推荐
相关产品推荐

