php安裝oci8和pdo_oci擴展實現連接oracle數據庫


PHP一般跟MySQL數據庫搭配使用,但最近遇到一個需求需要實現PHP連接Oracle,了解到PHP可以通過pdo_oci和oci8擴展來連接Oracle,這里將安裝的過程記錄下來。

安裝環境:PHP7.2.18,Deepin15.10

首先,安裝oci8和pdo_oci擴展依賴的Oracle client。

了解到需要連接的Oracle版本為11.2.0.4.0,在這里下載對應版本的Oracle client壓縮包。

instantclient-basic-linux.x64-11.2.0.4.0.zip

instantclient-sdk-linux.x64-11.2.0.4.0.zip

將上面的壓縮包放入同一個目錄中解壓,這里放入/opt/oracle目錄,然后解壓,命令如下:

cd /opt/oracle
unzip instantclient-basic-linux.x64-11.2.0.4.0.zip
unzip instantclient-sdk-linux.x64-11.2.0.4.0.zip

將解壓后的文件夾重命名

mv instantclient_11_2 instantclient

添加軟連接

cd instantclient
ln -s libclntsh.so.11.1 libclntsh.so
ln -s libocci.so.11.1 libocci.so

安裝 libaio 軟件包。這在某些 Linux 版本中名為 libaio1,當前系統環境下軟件包的名稱為libaio1

sudo apt-get install -y libaio1

生成動態鏈接庫系統緩存

sudo sh -c "echo /opt/oracle/instantclient > \
      /etc/ld.so.conf.d/oracle-instantclient.conf"
sudo ldconfig

 

然后,編譯安裝oci8擴展和pdo_oci擴展

PHP的oci8和pdo_oci擴展都已包含在PHP的源碼擴展包目錄中,所以首先從PHP的官方github倉庫下載對應自己PHP版本的PHP源代碼,這里是7.2.18,可通過克隆和下載壓縮包的方式,我這里通過下載壓縮包的方式,下載后放入/usr/local/src目錄下解壓,解壓后的目錄為/usr/local/src/php-7.2.18。注意:php、phpize、php-config都需要在PATH環境變量中找到。

 

編譯安裝oci8擴展

cp -r /usr/local/src/php-7.2.18/ext/oci8/ /tmp/
cd /tmp/oci8
phpize
./configure --with-oci8=instantclient,/opt/oracle/instantclient
make
sudo make install

完成后,編輯php.ini文件,加入extension=oci8,運行php -m 命令查看有oci8表明安裝成功。

 

編譯安裝pdo_oci擴展

cp -r /usr/local/src/php-7.2.18/ext/pdo_oci/ /tmp/
cd /tmp/pdo_oci
phpize
./configure --with-oci8=instantclient,/opt/oracle/instantclient,11.2.0.4.0
make
sudo make install

完成后,編輯php.ini文件,加入extension=pdo_oci,運行php -m 命令查看有PDO_OCI表明安裝成功。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM