ubuntu php连接oracle数据库

转载请注明来源:https://www.cnblogs.com/hookjc/

需要将数据库从mysql迁移到oracle。下了个oracle xe在ubuntu下折腾了好久,都只能启动1521的侦听端口,而数据库起不起来。无奈之下切换到windows,使用官网的安装包,顺利装上。

下一步就是需要php链接到oracle。这个必须用linux,没办法,硬上吧。折腾了许久,记录备忘。

1.需要instantclient-basic-linux32-11.2.0.2.0.zip和instantclient-sdk-linux32-11.2.0.2.0.zip

  从http://www.oracle.com/technetwork/topics/linuxsoft-082809.html下载,分别unzip,自动会都解压到同一个目录instantclient_11_2下。

  进入instantclient_11_2,运行如下命令

 ln -s libclntsh.so.11.1 libclntsh.so 建立符号链接

2.需要安装php的oci8扩展

   i.源码安装的php

         进入../php-5.3.3/ext/oci8

          phpize 生成 configure文件

          ./configure --with-oci8=instantclient,/path/you/unzip/instantclient_11_2 生成 makefile

          make

          make install

  ii.ubuntu的安装

         apt-get install php-pear --为了有pecl 可用

         apt-get install php5-dev --为了有phpize可用

         sudo pecl install oci8 当然也可以下载oci8然后直接sudo pecl ./oci8-1.4.5.tgz

         中间询问instantclient路径的时候输入instantclient,/path/you/unzip/instantclient_11_2即可

3.启用php扩展

    修改php.ini ,增加

     extension=/usr/lib/php5/20090626+lfs/oci8.so  -- 这个路径随便配了,总之能指向刚才编译出来的oci8.so就对了

4.让oci8.so能顺利找到oracle 的 client.so

   vim /etc/ld.so.conf

   加入/path/you/unzip/instantclient_11_2

   执行ldconfig

至此安装成功, 然后有apache的重启apache。

来源:python脚本自动迁移

posted @ 2020-06-29 10:06  jiangcheng_15  阅读(362)  评论(0编辑  收藏  举报