【问题标题】:What path to use when installing PHP OCI8 Linux Centos 8安装 PHP OCI8 Linux Centos 8 时使用什么路径
【发布时间】:2020-11-17 09:37:51
【问题描述】:

我现在遇到了问题,很困惑。

我尝试在我的 linux centos 8 上安装 oracle 即时客户端。到目前为止,我实现的是 httpd、php72 和 mariadb 工作正常。我可以在服务器中运行我的 php 文件。

我正在按照本教程在我的 LAMPP 堆栈中启用 php oci8。

https://medium.com/@azharnian/cara-install-oci8-php-7-di-centos7-851abbb5d15

但停留在这一步

sudo pecl install oci8

命令提示符询问provide the path to the ORACLE_HOME directory。参考图片。

我下载我的 oracle-instant-client zip 包并将其放入我的/home/user/oracle

到目前为止,我在这一步中尝试的是:

sudo sh -c "echo instantclient, /usr/lib64/php/modules"
sudo sh -c "echo instantclient_19_8, /usr/lib64/php/modules"
sudo sh -c "echo instantclient_19_8, /home/user/oracle/instantclient_19_8"
instantclient_19_8, /usr/lib64/php/modules/oci8.so
instantclient_19_8, /home/user/oracle/instantclient_19_8

错误:

checking build system type... Invalid configuration `/usr/lib64/php/modules/oci8.so': machine `/usr/lib64/php/modules/oci8.so' not recognized

这一步到底要我写什么?

感谢有人能告诉我正确的方法。非常感谢。

【问题讨论】:

    标签: php linux oracle oci8 centos8


    【解决方案1】:

    下载 Instant Client sdk ZIP 文件并将其解压缩到同一目录 /home/user/oracle/instantclient_19_8 中,如下所示:

      /home/user/oracle/instantclient_19_8:
      -r-xr-xr-x@  1 cjones  staff       5780  3 Jul 14:44 BASIC_LICENSE
      -rw-r--r--@  1 cjones  staff       1632  3 Jul 14:44 BASIC_README
      -r-xr-xr-x@  1 cjones  staff       5780  3 Jul 14:44 SDK_LICENSE
      -rw-r--r--@  1 cjones  staff       1626  3 Jul 14:44 SDK_README
      -rwxr-xr-x@  1 cjones  staff      41696  3 Jul 14:44 adrci
      -rwxr-xr-x@  1 cjones  staff      59272  3 Jul 14:44 genezi
      lrwxrwxrwx   1 cjones  staff         17 29 Jul 08:39 libclntsh.so -> libclntsh.so.19.1
      lrwxrwxrwx   1 cjones  staff         17 29 Jul 08:39 libclntsh.so.10.1 -> libclntsh.so.19.1
      lrwxrwxrwx   1 cjones  staff         17 29 Jul 08:39 libclntsh.so.11.1 -> libclntsh.so.19.1
      lrwxrwxrwx   1 cjones  staff         17 29 Jul 08:39 libclntsh.so.12.1 -> libclntsh.so.19.1
      lrwxrwxrwx   1 cjones  staff         17 29 Jul 08:39 libclntsh.so.18.1 -> libclntsh.so.19.1
      -rwxr-xr-x@  1 cjones  staff   80804848  3 Jul 14:44 libclntsh.so.19.1
      -rwxr-xr-x@  1 cjones  staff    8019360  3 Jul 14:44 libclntshcore.so.19.1
      -r-xr-xr-x@  1 cjones  staff    3608240  3 Jul 14:44 libipc1.so
      -r-xr-xr-x@  1 cjones  staff     478096  3 Jul 14:44 libmql1.so
      -rwxr-xr-x@  1 cjones  staff    6586360  3 Jul 14:44 libnnz19.so
      lrwxrwxrwx   1 cjones  staff         15 29 Jul 08:39 libocci.so -> libocci.so.19.1
      lrwxrwxrwx   1 cjones  staff         15 29 Jul 08:39 libocci.so.10.1 -> libocci.so.19.1
      lrwxrwxrwx   1 cjones  staff         15 29 Jul 08:39 libocci.so.11.1 -> libocci.so.19.1
      lrwxrwxrwx   1 cjones  staff         15 29 Jul 08:39 libocci.so.12.1 -> libocci.so.19.1
      lrwxrwxrwx   1 cjones  staff         15 29 Jul 08:39 libocci.so.18.1 -> libocci.so.19.1
      -rwxr-xr-x@  1 cjones  staff    2338456  3 Jul 14:44 libocci.so.19.1
      -rwxr-xr-x@  1 cjones  staff  130527608  3 Jul 14:44 libociei.so
      -r-xr-xr-x@  1 cjones  staff     153600  3 Jul 14:44 libocijdbc19.so
      -rwxr-xr-x@  1 cjones  staff     115760  3 Jul 14:44 liboramysql19.so
      drwxr-xr-x@  3 cjones  staff         96  3 Jul 14:44 network
      -rw-r--r--@  1 cjones  staff    4396157  3 Jul 14:44 ojdbc8.jar
      drwxr-xr-x@  7 cjones  staff        224  3 Jul 14:44 sdk
      -rw-r--r--@  1 cjones  staff    1681792  3 Jul 14:44 ucp.jar
      -rwxr-xr-x@  1 cjones  staff     236256  3 Jul 14:44 uidrvci
      -rw-r--r--@  1 cjones  staff      74263  3 Jul 14:44 xstreams.jar
    

    然后运行

    sudo sh -c "echo /home/user/oracle/instantclient_19_8 > /etc/ld.so.conf.d/oracle-instantclient.conf"
    sudo ldconfig
    

    (如installation instructions所示)。

    然后在pecl install oci8 提示符处输入instantclient,/home/user/oracle/instantclient_19_8。注意我不在逗号后使用空格。我不记得如果你使用空格会发生什么。在我典型的黑客机器上,我倾向于以 root 身份完成所有操作:

    sudo su -
    pecl install oci8
    

    但您可能可以执行某种sudo sh -c 选项并运行echo "instantclient,/home/user/oracle/instantclient_19_8" | pecl install oci8

    PShttps://www.oracle.com/database/technologies/underground-php-oracle-manual.html可能有一些有用的资料

    【讨论】:

    • @Chistopher 谢谢。会先试试。抱歉回复晚了。
    猜你喜欢
    • 2019-08-23
    • 2021-10-10
    • 2020-11-16
    • 2021-01-30
    • 1970-01-01
    • 2021-01-09
    • 2013-11-11
    • 2020-08-08
    • 2018-09-26
    相关资源
    最近更新 更多