关于配置odbc的问题,详细描述一下

时间:2022-02-25 04:35:16
查了查贴子,有不少是关于配置odbc的问题,但是没有一个很详细的。最近我也遇到

了这个问题,我说的细一点,让大家来看看。

 我下了一个INFOMRIX CLIENT SDK.8,在用PB65与Informix做连接前,先试用
ODBC与INFORMIX连接,但是没有成功,那么来看看错在那里?


informix服务器的一些相关信息:
-〉isqhosts文件内容
   #demo_on        onipcshm        on_hostname     on_servername
   #demo_se        seipcpip        se_hostname     sqlexec
   on_shm6         onipcshm        bo40            on_shm6_srv
   on_tcp6         ontlitcp        bo40            9001
   on_shm1         onipcshm        boms            on_shm1_srv
   on_tcp1         ontlitcp        boms            8001
   on_shm8         onipcshm        bo40            on_shm8_srv
   on_tcp8         ontlitcp        bo40            9002

--〉服务器ip地址 170.8.1.2
--〉数据库名 testbase
--〉登陆到informix数据库的普通帐户 是 test123 密码 test123

有了以上几条信息就够了,下面就做配置了动作了

1:用INFORMIX Setnet32 -->server information 

  IBM INFORMIX server -- on_tcp6
             HostName -- 170.8.1.2
       Protocolname   -- onsoctcp (这里有点疑问,我没有找到ontlitcp协议 
                                   所以就用了onsoctcp来替代,不知道是不是 
                                   可以)
        Service Name  -- 9001

    点击确认键

2:进入ODBC中添加 一条系统DSN,在Connection中填写
   
   Server Name -- on_tcp6
     Host Name -- 170.8.1.2
      Service  -- 9001
     Protocol  -- onsoctcp       
 Database Name -- testbase
      User ID  -- test123
      PASSword -- test123

   按 'Apply & Test Connection' 按钮,提示 

 Test connection was NOT successful.[Informix][Informix ODBC Driver][Informix]Attempt to connect to database server (on_tcp6) failed


配置步骤都已经做完了,我怀疑是 Protocolname  -- onsoctcp 这里的问题,因为与sqlhosts中对应的协议不一致,不知道哪位知道,谢谢!

7 个解决方案

#1


你的是什么版本?
isqhosts 应该是 sqlhosts 吧?
看看 informix cli 的 iLogin demo 通了吗?
onsoctcp 是对的。


#2


是的,应该是sqlhosts文件

我试了一下 iLogin demo 配置不变 结果失败,
错误提示:
  database: sqlcode = -908
Refer to informix find error utility or informix error messages manual for more details on this error number



#3


先在 informix server 端 dbaccess 用connect 连一下 on_tcp6 ,若能连通说明服务端没问题。
我看配置也没问题。
换个informix cli 重新试验一下。

#4


我用dbaccess进入,连接发现只有on_shm8 和 on_tcp8可以连接进去,
如 选择了 on_tcp8进入后,提示 select database --> 移动光标选择 ts@on_tcp8,
   正常进入.

  问题是我进入ODBC中添加 一条系统DSN,在Connection中填写
   
   Server Name -- on_tcp8
     Host Name -- 170.8.1.2
      Service  -- 9002
     Protocol  -- onsoctcp       
 Database Name -- testbase@on_tcp8
      User ID  -- test123
      PASSword -- test123

 按 'Apply & Test Connection' 按钮,提示 

 Test connection was NOT successful.[Informix][Informix ODBC Driver][Informix]Attempt to connect to database server (on_tcp6) failed

还是一样的问题,(另外我已经从ibm网站上下载了最新的informix CSDK ) 怎么回事呢?

#5


你到底用的是什么端口啊,怎么第一个帖子是9001,后面变成9002了。你先把SDK搞通了,在到ODBC里面去填加,否则有问题你也找不出是什么来

#6


经wenlq的提示,我发现on_tcp8可以用,所以改用tcp8 那么端口也就改为9002了,是呀,现在问题就是在csdk上,这上面就开始出现问题了。

#7


已经可以了,谢谢各位。

#1


你的是什么版本?
isqhosts 应该是 sqlhosts 吧?
看看 informix cli 的 iLogin demo 通了吗?
onsoctcp 是对的。


#2


是的,应该是sqlhosts文件

我试了一下 iLogin demo 配置不变 结果失败,
错误提示:
  database: sqlcode = -908
Refer to informix find error utility or informix error messages manual for more details on this error number



#3


先在 informix server 端 dbaccess 用connect 连一下 on_tcp6 ,若能连通说明服务端没问题。
我看配置也没问题。
换个informix cli 重新试验一下。

#4


我用dbaccess进入,连接发现只有on_shm8 和 on_tcp8可以连接进去,
如 选择了 on_tcp8进入后,提示 select database --> 移动光标选择 ts@on_tcp8,
   正常进入.

  问题是我进入ODBC中添加 一条系统DSN,在Connection中填写
   
   Server Name -- on_tcp8
     Host Name -- 170.8.1.2
      Service  -- 9002
     Protocol  -- onsoctcp       
 Database Name -- testbase@on_tcp8
      User ID  -- test123
      PASSword -- test123

 按 'Apply & Test Connection' 按钮,提示 

 Test connection was NOT successful.[Informix][Informix ODBC Driver][Informix]Attempt to connect to database server (on_tcp6) failed

还是一样的问题,(另外我已经从ibm网站上下载了最新的informix CSDK ) 怎么回事呢?

#5


你到底用的是什么端口啊,怎么第一个帖子是9001,后面变成9002了。你先把SDK搞通了,在到ODBC里面去填加,否则有问题你也找不出是什么来

#6


经wenlq的提示,我发现on_tcp8可以用,所以改用tcp8 那么端口也就改为9002了,是呀,现在问题就是在csdk上,这上面就开始出现问题了。

#7


已经可以了,谢谢各位。