informix 安装 linux 客户端

05-31

informix安装

informix 安装 linux 客户端

搭建 informix 服务端

如果没有 informix 服务端,可以使用 Docker 搭建一个服务用于测试,步骤略。

服务器启动后,可以通过 dbaccess 工具访问数据库,创建数据库和表,并插入数据,这个工具需要不断进入菜单和退出菜单,非常不习惯。

安装客户端

环境

CentOS7

参考文章:
informix 客户端安装步骤
访问 informix 数据库,informix ODBC 驱动安装

首先安装 Informix Client SDK,找 SDK 的下载地址浪费了好长时间!!从这里下载 IBM software

ibm.csdk.4.50.FC4W1.LNX.tar

上传 CentOS7 主机,解压

tar xf ibm.csdk.4.50.FC4W1.LNX.tar

创建目录,我们会把 SDK 安装在这里

mkdir -p /opt/IBM/informix

执行安装

./installclientsdk -i console

安装步骤中,其中有一步会让我们选择安装目录,输入 /opt/IBM/informix

编辑 /etc/services 文件,添加内容:

adr_port 9088/tcp

sqlhosts.std 复制一个 sqlhosts 文件

cp /opt/IBM/informix/etc/sqlhosts.std /opt/IBM/informix/etc/sqlhosts

编辑 /opt/IBM/informix/etc/sqlhosts 文件,添加:

informix onsoctcp 192.168.10.165 adr_port

informix 是 DBSERVERNAME,在 informix 启动 dbaccess 看到的那个

192.168.10.165 是 informix 的 IP

adr_port 就是前边配置在 /etc/services 中的,似乎也可以直接写端口

复制两个文件到 /etc 下边

cp /opt/IBM/informix/etc/odbc.ini /etc/ cp /opt/IBM/informix/etc/odbcinst.ini /etc/

编辑 /etc/odbc.ini,添加

# Driver 如果 SDK 安装路径一样,这里保持不变 # Database 数据库名称 # LogonID 用户名 # pwd 密码 # TRANSLATIONDLL 如果 SDK 安装路径一样,这里保持不变 # 没有说明的可以不变 [test] Driver=/opt/IBM/informix/lib/cli/iclit09b.so Description=IBM INFORMIX ODBC DRIVER Database=mytest LogonID=informix pwd=in4mix Servername=informix CursorBehavior=0 CLIENT_LOCALE=en_us.8859-1 DB_LOCALE=en_us.8859-1 TRANSLATIONDLL=/opt/IBM/informix/lib/esql/igo4a304.so ; ; UNICODE connection Section ;

编辑 /etc/odbcinst.ini,添加

# Driver 如果 SDK 安装路径一样,这里保持不变 # Setup 如果 SDK 安装路径一样,这里保持不变 # 其他不变 [IBM INFORMIX ODBC DRIVER] Driver=/opt/IBM/informix/lib/cli/iclit09b.so Setup=/opt/IBM/informix/lib/cli/iclit09b.so APILevel=1 ConnectFunctions=YYY DriverODBCVer=03.51 FileUsage=0 SQLLevel=1 smProcessPerConnect=Y

/etc/profile 添加环境变量

# INFORMIX # 如果 SDK 安装路径一样,这里保持不变 export INFORMIXDIR=/opt/IBM/informix export ODBCINI=/etc/odbc.ini export ODBCINSTINI=/etc/odbcinst.ini export PATH=$PATH:/opt/IBM/informix/bin export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$INFORMIXDIR/lib:$INFORMIXDIR/lib/esql

使生效

source /etc/profile

安装 ODBC

yum install unixODBC-devel

访问数据库

isql -v test

顺利的话,将看到如下信息

+---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+ SQL>

遇到的错误

刚开始遇到了个错误,执行 isql -v test 报错,提示 /opt/IBM/informix/lib/cli/iclit09b.so找不到

看了一下,这个文件是存在的

通过 ldd /opt/IBM/informix/lib/cli/iclit09b.so 发现依赖文件不存在(一般不会有问题,我是安装 SDK 没安好,重新安装了一遍就不报错了)