Firebird php 找不到主机

Firebird php Failed to locate host machine

我尝试 运行 一个 ibase_connect 到 firebird 数据库。

数据库不在我的本地主机上。它 运行 在网络 windows 服务器上。

我也有 windows 并且连接到共享文件夹:

Z:\Folder_WITH_DB.

我已经 XAMPP 安装了

我将 fbclient.dll 复制到我的 XAMPP/php 文件夹中。

但是如果我运行这个代码:

$db = 'Z:/Folder_WITH_DB/database.fdb';
$username='SYSDBA';
$password='masterkey';

$dbh = ibase_connect ( $db, $username, $password ) or die ("error in db connect");

出现这个错误

 Warning: ibase_connect(): Unable to complete network request to host "Z". Failed to locate host machine. in xxx/index.php on line xx

firebird.log:

INET/INET_connect: gethostbyname (Z) failed, error code = 11004

我将 gds_db 3050/tcp 添加到我的本地主机和服务器上的服务文件(已重新启动两者),它是同样的错误。

Windows 服务器上的防火墙已停用。 firebird 服务器和 firebird 守护者的服务是 运行ning。

Firebird 只能使用数据库服务器本地的数据库文件。您无法连接到网络共享上的 Firebird 数据库*。您需要改为连接到 Firebird 服务器。

因此,如果 'Z:/Folder_WITH_DB/database.fdb' 的数据库位于文件夹 D:\data\database.fdb 中的服务器 firebirdsrv 上,那么您需要连接到 firebirdsrv/3050:D:\data\database.fdb。我强烈建议删除网络共享。

*: 技术上可以使用共享,但默认情况下它是禁用的,因为通过网络共享从多个服务器访问数据库可能会损坏数据库。