1. 程式人生 > >Centos7下安裝OCI環境

Centos7下安裝OCI環境

前言

前段時間,專案需要對Oracle資料庫進行訪問,由於後端採用C/C++開發,因此選用了OCI介面進行訪問,下面將介紹如何安裝環境

環境

CentOs7

安裝前準備

1、oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64 .rpm

2、oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm

3、oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm

4、automake-1.11.1.tar.gz

5、autoconf-2.68.tar.gz

6、ocilib-4.1.0-gnu.tar.gz

安裝步驟:許可權請調至root

1、依次執行下列命令

rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64 .rpm

rpm -ivh oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm

rpm -ivh oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm

chmod + /etc/profile

export ORACLE_HOME=/usr/lib/oracle/11.2/client64

export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib:/usr/local/lib

export ORACLE_SID=viot

export PATH=$PATH:$ORACLE_HOME/bin

source /etc/profile

cd /usr/lib/oracle/11.2/client64/bin

2、保證本機IP能PING通ORACLE伺服器IP,執行下列命令

./sqlplus TESTUSER0725/[email protected]:1521/orcl

提示:

TESTUSER3G6L為資料庫的使用者名稱

123456為密碼

172.16.1.33ORACLE資料庫IP

1521為埠

OrclSID

3、執行下列命令檢視automake版本資訊 

INSTA

如果版本號不為1.11.1則進行安裝automake11.1.1,執行下列命令

tar -xzvf automake-1.11.1.tar.gz

cd automake-1.11.1

./configure

make

make install

如果提示:

configure: error: Autoconf 2.60 or better is required.

Please make sure it is installed and in your PATH.

則進行安裝autoconf-2.68.tar.gz 依次執行下列命令

tar -xzvf autoconf-2.68.tar.gz

cd autoconf-2.68

./configure

make

make install

4 安裝配置OCI

tar -xzvf ocilib-4.1.0-gnu.tar.gz

cd ocilib-4.1.0

./configure --with-oracle-lib-path=/usr/lib/oracle/11.2/client64/lib --with-oracle-headers-path=/usr/include/oracle/11.2/client64

make

make install

5 配置環境變數

echo "/usr/local/lib">>/etc/ld.so.conf

echo /usr/lib/oracle/11.2/client64/lib>>/etc/ld.so.conf

ldconfig

6:gcc main.c -locilib -o client –w

問題及解決方案:

1:LINUX系統下使用OCI介面查詢中文顯示為‘?’的問題

解決方法:

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

source /etc/profile

2: 若Linux重啟後出現亂碼或者服務執行失敗,提示.so尋找不到的的問題

解決方法:

vi /etc/profile

export ORACLE_HOME=/usr/lib/oracle/11.2/client64

export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib:/usr/local/lib

export ORACLE_SID=viot

export PATH=$PATH:$ORACLE_HOME/bin

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8