我正在尝试连接到 Informix DB 服务器 (v10),并且正在使用 Informix Data Provider .NET 类库通过 .NET 应用程序建立连接并检索数据。
最初,我在本地机器上设置了一个 Informix 服务器来对这个库进行一些测试。有趣的是,有两种情况,一种连接字符串有效,另一种无效。
场景 1:服务器设置为通过协议 'drsoctcp' 连接,连接字符串如下:
connectionString="Server=my.server.com:9088; Database=mytestdb; User ID=user; Password=mypass; Persist Security Info=True; Authentication=Server;"
以上工作,因为正在使用的协议是'drsoctcp'
场景 2:服务器设置为通过协议“onsoctcp”进行连接,连接字符串与上面完全相同。连接将不起作用,抛出的错误是:
错误 [08001] [IBM] SQL30081N 通信错误或已检测到。正在使用的通信协议:“TCP/IP”。正在使用的通信 API:“SOCKETS”。检测到错误的位置:“fe80::1:10 9:c212:ce44%10”。检测错误的通信功能:“recv”。协议特定错误代码:“ ”、“ ”、“0”。SQLSTATE=08001
“my.server.com”是我在 LAN 上识别的机器的名称。我还尝试使用 localhost 或 IP 地址(127.0.0.1 和外部 IP 地址),但仍然没有成功。
真正的问题在这里:我希望连接的 Informix 服务器(完全在不同的网络上)可供我通过 onsoctcp 协议进行连接。
有没有人设法通过 onsoctcp 协议与 .NET Informix 提供程序类连接?
提前致谢。