一、先对以下操作的环境做以下假设
1.服务器端
服务器机器名: scoserver
ip地址:10.0.0.1
数据库名:informixserver
service name : sqlexec
端口号: 5000/tcp
数据库用户名:informix
数据库用户口令:informix
2.客户端
windows xp + informix connect 2.8
二、谈谈以上参数如何获得
1.服务器机器名,即hostname,可以用hostname命令查看。
2.ip地址:可以用ifconfig -a来看
3.数据库名:可以查看$INFORMIXSERVER/etc/sqlhosts文件。第一列就是数据库名
4.service name:可以查看$INFORMIXSERVER/etc/sqlhosts文件。最后一列就是service name
5.端口号:查到service name之后,在/etc/services文件中找该service name 即可发现
三、客户端的设置
1.建议在客户端配置hosts,services这两个文件,使其包含服务器的内容。具体做法如下:
window xp的hosts,和services两个文件放在%systemroot%/system32/drivers/etc目录下。
在hosts后面添加一行:
10.0.0.1 scoserver
在services后面添加一行
sqlexec 5000/tcp
2.运行DBping测试和服务器的连通性。
先用ping测试物理是否连通,记住在hostname的地方直接输入机器名就可以了,不用ip地址。
(因为你已经配好了hosts文件)
然后用iconnect进行逻辑ping
按照以上信息填写(当然要根据你的实际情况填写啰),然后数据库选择sysmaster,应该就会成功了。
3.最后建一个odbc连接,再测测。问题应该不大,要填写的参数,在iconnect测试中都有了。
四、例外的情况
我有一次在测iconnect的时候,老是提示我“我所提供的informixserver名不在服务器的列表中”。可是实际上没有错
最后,我不管它,直接建立odbc连接,测试通过。回头再测一编iconnect,居然也成功了。真是!@#$%