最近因為專案研究了一下php整合oracle,雖然這個組合很奇葩,但萬一用到請勿採坑~
oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm
oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm
ps: 兩個都必須安裝,devel版本就是sdk
安裝
# rpm -i oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm
# rpm -i oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm
安裝成功會生成如下目錄,64位系統必須軟連線成舊版(否則編譯報版本不支援的錯,應該是歷史問題,坑1)
# ln /usr/lib/oracle/12.2 /usr/lib/oracle/10.2.0.1
# ln /usr/include/oracle/12.2 /usr/include/oracle/10.2.0.1
新增環境變數
# vi etc/profile
加入
export oracle_home=/usr/lib/oracle/11.2/client64/
export ld_library_path=/usr/lib/oracle/11.2/client64:$ld_library_path
export nls_lang="american_america.al32utf8"
生效
# source /etc/profile
oci8-2.1.8.tgz和pdo_oci-1.0.tgz
編譯安裝oci8
# tar -zxf oci8-2.1.8.tgz
# cd oci8-2.1.8
# phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config --with-oci8=shared,instantclient,/usr/lib/oracle/12.2/client64/lib
# make
# make install
生成oci8.so即成功
編譯安裝pdo_oci
# tar -zxf pdo_oci-1.0.tgz
# cd pdo_oci-1.0
# phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-oci=instantclient,/usr,10.2.0.1
# make
# make install
生成pdo_oci.so即成功
具體方式根據php環境而定,我的環境不需要改變so檔案路徑,使用生成的預設路徑即可,只需要新增additional .ini files到/usr/local/php/etc/php.d/,重啟生效
確認生效狀態
# php -m | grep -e oci8 -e pdo_oci
oci8
pdo_oci
大功告成
ps
windows下php7 1安裝redis擴充套件
首先我們應該安裝redis伺服器 修改密碼,開啟redis安裝目錄的redis.windows.conf檔案 以及redis.windows service.conf 找到 requirepass foobared這一行,然後在下面增加一行 requirepass 你的密碼開啟乙個cmd,然後啟動r...
centos安裝php7 1和nginx注意事項
報錯 php53 common conflicts with php common 解決 yum y install php skip broken第一步 安裝源 yum install epel release rpm uvh com yum el6 latest.rpm第二步 安裝php的元件 ...
PHP7 1安裝yaf擴充套件
php71安裝yaf擴充套件 把php命令加到系統 安裝我的php安裝目錄是 usr local webserver php,所以phpize是 usr local webserver php bin phpize,但是考慮到以後可能會用到其他命令,所以一次把該目錄下的檔案都做了乙個軟鏈結 ln u...