You need to enable JavaScript to run this app. 如何在客户端创建多个Informix ODBC驱动的DSN并解决IP覆盖问题
优惠活动
大模型
产品
解决方案
定价
更多

如何在客户端创建多个Informix ODBC驱动的DSN并解决IP覆盖问题

问题根本原因

该问题是Informix客户端ODBC驱动的默认规则导致:两个DSN配置时如果使用了相同的Informix数据库服务器名(DBSERVERNAME),驱动会全局缓存服务器名对应的IP/端口配置,后保存的DSN的IP会覆盖前一个同服务器名DSN的IP信息。

解决步骤

  • 步骤1:分别登录主、备Informix服务器,执行命令onstat -c | grep DBSERVERNAME,查询两个库各自的DBSERVERNAME实际值,两者默认不重名,记录备用。
  • 步骤2:修改客户端的sqlhosts配置文件(默认路径为Informix客户端安装目录下的/etc/sqlhosts,Windows客户端可通过Setnet32工具的「Host Information」标签页配置),新增两行记录:
    主库DBSERVERNAME   onsoctcp   主库实际IP   主库服务端口
    备库DBSERVERNAME   onsoctcp   备库实际IP   备库服务端口
    
    确保第一列的服务器名和步骤1查询到的结果完全一致,不能自定义重名。
  • 步骤3:重新创建两个ODBC DSN,创建时「Server Name」字段分别选择对应库的DBSERVERNAME即可,IP会自动从sqlhosts配置读取,无需手动填写,保存后不会再出现IP覆盖问题。
  • 步骤4:分别对两个DSN执行连接测试,验证连通性。

配置界面参考

Informix DSN配置界面截图

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.13 06:33:03