- 论坛徽章:
- 0
|
操作系统
Red Hat Enterprise Linux AS release 4 (Nahant)
Kernel 2.6.9-5.ELsmp on an i686
版本情况如下
$ db2level
DB21085I 实例 "db2inst1" 使用 "32" 位和 DB2 代码发行版 "SQL08023",级别标识为
"03040106"。
参考标记为 "DB2 v8.1.2.96"、"s050811" 和 "MI00142",修订包为 "10"。
产品是在 "/opt/IBM/db2/V8.1" 处安装的。
$ onstat -V
IBM Informix Dynamic Server Version 10.00.UC1 Software Serial Number AAA#B000000
$ esql -V
IBM Informix CSDK Version 2.90, IBM Informix-ESQL Version 2.90.UC1
Software Serial Number RDS#N000000
/etc/services 相关informix和db2的配置,查看services文件,端口与其它服务无冲突
informix 5000/tcp # Informix Database Services
DB2_db2inst1 6000/tcp
DB2_db2inst1_1 6001/tcp
DB2_db2inst1_2 6002/tcp
DB2_db2inst1_END 6003/tcp
db2c_db2inst1 5001/tcp
查看端口情况,没有问题
$ netstat -an|grep 500
tcp 0 0 192.168.1.66:5000 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:5001 0.0.0.0:* LISTEN
连接db2代码
EXEC SQL CONNECT TO 'mst_db';
判断返回sqlca.sqlcode为 -130081
使用db2查看错误码,经查看为 通讯错
db2 ? sql30081
后发现db2的连接命令的通讯报文竟然发送到了informix数据库这里了,经查看online.log有如下记录,每进行一次db2的连接就会出现下面一条记录在online.log里面.
19:34:26 listener-thread: err = -408: oserr = 0: errstr = : Invalid message type received from the sqlexec process.
根据相关的资料使用esql进行编译,只要加上-db2参数即可连接db2数据库.
另数据库通过windows终端WINSQL软件配置连接都可正常访问.
-------------------------------------------------------------------------------------------------------
问题:在linux下从informix数据库迁移到db2数据库,代码编译-db2通过,但是为什么还是连接informix数据库,问题在哪里? |
|