PHP的OCI模块支持Oracle总是比较让人头痛。这趟弄个Ubuntu的安装文档。
通过Ubuntu-Server安装盘安装LAMP。当然,正常情况下,建议安装好openssh服务器,免得麻烦。
虽然Ubuntu的Server支持root直接登录,既然是Ubuntu,还是遵循它的sudo吧。
安装结束后,启动Server。
首先,经典的更新
#sudo apt-get update; sudo apt-get upgrade
添加所需的包
#sudo apt-get install php5-dev build-essential php-pear libaio1
差点忘了,要装unzip:
#sudo apt-get install unzip
按照oracle官方网站的要求 下载Instant Client ,我老老实实的下载了basic和sdk两个包,理论上下载basic-lit和sdk就可以。
设立目录,解压缩:
#sudo mkdir /opt/oracle
#sudo cp ~/*.zip /opt/oracle
#cd /opt/oracle
#sudo unzip ./*.zip
#sudo mv instantclient_11_1 instantclient
设置instantclient:
#sudo ln –s libclntsh.so.11.1 libclntsh.so
#sudo ln –s libocci.so.11.1 libocci.so
#sudo export ORACLE_HOME=/opt/oracle/instantclien
添加lib库位置:
#cd /etc/ld.so.conf.d
#sudo nano liboci.conf //添加一行:/opt/oracle/instantclient
#sudo ldconfig
准备OCI8库:
#sudo mkdir /tmp/src
#cd /tmp/src
#sudo pecl download oci8
#sudo tar vzxf oci8-1.3.5.tgz //我下载的版本是135
#cd oci8-1.3.5
编译OCI8:
#sudo phpize //比较容易出错的地方,如果报错,你可能没有安装php5-dev包
#sudo ./configure –with-oci8=share,instantclient,$ORACLE_HOME
#sudo make; sudo make install
设置php5支持:
正常情况下编译完成后会有提示:Installing shared extensions: /usr/lib/php5/20060613/
到此目录下确认是否存在oci8.so
#cd /etc/php5/conf.d
#sudo nano oci8.ini //添加一行:extension=oci8.so
#sudo apache2ctl restart
经过上述步骤,oci8模块就会成功安装,可以通过phpinfo页面确认是否存在oci8模块