1. 程式人生 > >linux下 WMB通過ODBC連線資料庫

linux下 WMB通過ODBC連線資料庫

目前環境:

ESB版本:wmb8.0

資料庫:Oracle 10g

系統:linux 6.4

現在要mb要通過odbc連線到資料庫

1.配置ODBC檔案

(a)從MB的安裝目錄/opt/ibm/mqsi/8.0.0.1/ODBC/unixodbc複製odbc.ini,odbcinst.ini檔案到使用者目錄,使用root使用者修改擁有使用者和許可權

chown mqm:mqbrkrs odbc.ini·

chown mqm:mqbrkrs odbcinst.ini

chmod -R 775 odbc.ini

chmod-R 775 odbcinst.ini

(b)切換到mbadmin使用者修改環境變數新增ODBCINI 和ODBCSYSI路徑指向odbc.ini,odbcinst.ini檔案

exportODBCINI=/home/mbadmin/odbc.ini

exportODBCSYSINI=/home/mbadmin/odbcinst.ini

修改完成後執行source .bash_profile使修改生效

(c)修改odbc.ini檔案,這裡連線ORACLE資料庫,只修改前5項即可 Driver指向MB安裝目錄下的驅動,注意紫色的[ORACLEDB] 這個是資料來源的名稱

(d)在mbadmin使用者的.bash_profile環境變數檔案中新增如下資訊,注意路徑隨著安裝位置而變化(不同版本的MB可能資料夾名稱也不同,注意核對)

LD_LIBRARY_PATH=/opt/ibm/mqsi/8.0.0.1/lib:$LD_LIBRARY_PATH

LD_LIBRARY_PATH=/opt/ibm/mqsi/8.0.0.1/xml4c/lib:$LD_LIBRARY_PATH

LD_LIBRARY_PATH=/opt/ibm/mqsi/8.0.0.1/xml4c/lib64:$LD_LIBRARY_PATH

LD_LIBRARY_PATH=/opt/ibm/mqsi/8.0.0.1/jre16/lib:$LD_LIBRARY_PATH

LD_LIBRARY_PATH=/opt/ibm/mqsi/8.0.0.1/jre16/lib/sparcv9/server:$LD_LIBRARY_PATH

LD_LIBRARY_PATH=/opt/ibm/mqsi/8.0.0.1/jre16/bin:$LD_LIBRARY_PATH

LD_LIBRARY_PATH=/opt/ibm/mqsi/8.0.0.1/ODBC/V6.0/lib:$LD_LIBRARY_PATH

LD_LIBRARY_PATH=/opt/ibm/mqsi/8.0.0.1/xlxpc/lib/:$LD_LIBRARY_PATH

LD_LIBRARY_PATH=/opt/ibm/mqsi/8.0.0.1/lib:$LD_LIBRARY_PATH

LD_LIBRARY_PATH=/opt/ibm/mqsi/8.0.0.1/bin/:$LD_LIBRARY_PATH

exportLD_LIBRARY_PATH


(e)給MB繫結ODBC資料來源

mqsisetdbparms <代理名稱> -n <odbc資料來源名稱> -u <使用者名稱> -p <密碼>

mqsisetdbparms MB7BROKER -n ORACLEDB-u esb11 -p esb22

(f)在需要查資料庫的compute節點的屬性中寫上資料來源,然後直接寫sql就能查資料庫了

2. 使用root使用者安裝unixODBC進行連通性測試(這個可以不安裝,只是為了測試odbc是否配置正確)

(a)順序執行命令

tar zxvf unixODBC-2.3.0.tar.gz

cd unixODBC-2.3.0

./configure --prefix=/app/unixODBC-2.3.0 --includedir=/usr/include --libdir=/usr/lib-bindir=/usr/bin --sysconfdir=/etc

make

make install

安裝完成後執行isql出現如下介面,安裝正常

(b)執行: isql 資料來源 使用者名稱 密碼 –v 連線資料庫

如果出現isql: error while loading shared libraries: libodbc.so.1:cannot open shared object file: No such file or directory異常訊息

在/etc/ld.so.conf檔案中加入libodbc.so.1檔案所在的路徑/usr/local/unixODBC/lib/

執行 ldconfig命令使修改生效