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 沒安好,重新安裝了一遍就不報錯了)