下载instantclient 以及sdk
instantclient-basic-linux-x86-64-11.2.0.2.0.zip
oracle-instantclient11.2-sdk-11.2.0.1.0-1.x86_64.zip
上传服务器解压后统一放置一个目录下,我放在 /usr/local/oracle_client 里。
然后 echo "/usr/local/oracle_client" > /etc/ld.so.conf.d/oracle_client.conf
使用 /sbin/ldconfig 来创建链接。但在后面的编辑过程中会出现无法找到libclntsh.so的错误。
百思不得其解,后来回头看instantclient包里的文件,发现有两个文件是被加了版本后缀的。
复制他们并删掉带版本后缀的文件。
libclntsh.so.11.1 -> libclntsh.so
libocci.so.11.1 -> libocci.so
然后 /sbin/ldconfig 会发现,自动创建了libclntsh.so.11.1 和 libocci.so.11.1。顿时惊呼好坑!!!
然后编译oci8 --with-oci8=instantclient,/usr/local/oracle_client 妥妥的过了。
在编译pdo_oci的时候, --with-pdo-oci=instantclient,/usr/local/oracle_client,11.1.0.2 这里必须带版本号,不然会提示版本错误