运行 Java 程序上的 INFORMIX 错误

INFORMIX error on running a Java program

我一直在尝试使用 Java 编写的小程序连接到 Informix 数据库。

该程序在其中一台 Informix 测试服务器上运行良好,但在其中一台生产系统的 运行 上它给我们以下异常:

java.sql.SQLException: INFORMIXSERVER does not match either DBSERVERNAME or DBSERVERALIASES.

我做了一些研究并检查了以下两个值是否存在差异。

  1. Output of the command echo $INFORMIXSERVER.

  2. Value of the DBSERVERNAME in the onconfig file on the server, present in the $INFORMIXDIR/etc directory.

这两个值是一样的,我看不出这两个值有什么问题。

你们能给我一些解决方案或任何我可以寻找解决方案的地方吗?

谢谢。

您的连接字符串应该类似于:

jdbc:informix-sqli://HOSTNAME:PORT:informixserver=DBSERVERNAME;user=USERNAME;password=PASSWORD;

例如,如果您的 informix sql 主机文件如下所示:

infx1150        onsoctcp        tardis 15115   k=1

然后,用户 informix 和密码 the_key 的连接字符串应该如下所示:

jdbc:informix-sqli://tardis:15115:informixserver=infx1150;user=informix;password=the_key;

您收到的错误表明您的连接字符串上的 informixserver 值与给定主机上的 DBSERVENAME 不匹配。

这意味着您正在访问连接字符串上的主机和端口,但不是 DBSERVERNAME