对于php5.6
请注意,这是可行的,但请注意,这可能是一些不必要的步骤或改进,我只做了一次,没有时间完善它。
这适用于没有 pecl 命令的手动安装,因为这似乎是你的问题
1- 转到http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
在“版本 12.2.0.1.0”部分
- "Instant Client Package - Basic:运行所需的所有文件
OCI、OCCI 和 JDBC-OCI 应用程序"
下载instantclient-basic-linux.x64-12.2.0.1.0.zip
- "Instant Client Package - SDK:附加头文件和
使用 Instant 开发 Oracle 应用程序的示例 makefile
客户”
下载instantclient-sdk-linux.x64-12.2.0.1.0.zip
2- 解压缩 instantclient-basic-linux.x64-12.2.0.1.0.zip 并复制到您想要的目录,即:
cp -R instantclient_12_2/ /usr/lib/
3- 解压缩 instantclient-sdk-linux.x64-12.2.0.1.0.zip 并将 sdk 标头复制到您复制 instanclient 的目录
cp -R ./instantclient_12_2/sdk /usr/lib/instantclient_12_2/
4- 制作符号链接:
cd /usr/lib/instantclient_12_2
ln -s libocci.so.12.1 libocci.so
ln -s libclntsh.so.12.1 libclntsh.so
5- 配置库路径:
- 编辑 /etc/environment 文件并在末尾插入:
LD_LIBRARY_PATH="/usr/lib/instantclient_12_2"
- 编辑 ~/.bashrc 文件并在末尾插入:export
LD_LIBRARY_PATH=/usr/lib/instantclient_12_2
6- 安装开发包:
apt install -y php5.6-dev
7- 转到https://pecl.php.net/package/oci8
下载https://pecl.php.net/get/oci8-2.0.12.tgz
8- 解压它:
tar -zxf oci8-1.4.10.tgz
9- 编译和配置:
cd oci8-1.4.10
phpize
./configure -with-oci8=shared,instantclient,/usr/lib/instantclient_12_2/
make install
10- 启用扩展(在本例中为 fpm)
编辑 /etc/php/5.6/fpm/php.ini 文件并在末尾插入 > extension=oci8.so
11-重启服务:
service php5.6-fpm restart
玩得开心。
PS:我在查找信息时发现的最有帮助的网站是 http://www.phptutorial.info/?oci8.installation,其中解释了使用/不使用 pecl、手动等进行安装。