Tutorial OCI8 + PHP 7.4 – O Guia para não bater a cabeça na tela
Passei HORAS apanhando pra fazer essa lib funcionar no PHP 7.4, então vou compartilhar o passo a passo QUE DEU CERTO pra mim. Se você tá aqui, provavelmente também tá no desespero. Bora tentar mais um tutorial! Primeiro de tudo baixa esses trem da Oracle Download do Oracle Instant Client e do SDK no site da Oracle (Precisa criar conta na Oracle) pode ser versão mais recente Arquivos: instantclient-basic-linux.x64-23.7.0.25.01.zip e instantclient-sdk-linux.x64-23.7.0.25.01.zip Segundo passo! Você precisa criar uma pasta e fazer upload dos zips em seu servidor mkdir /opt/oracle Agora extrai os zips cd /opt/oracle unzip instantclient-basic-linux.x64-23.7.0.25.01.zip unzip instantclient-sdk-linux.x64-23.7.0.25.01.zip Terceira passo É necessário criar um link simbólico ln -sf /opt/oracle/instantclient_23_7/libclntsh.so.23.7 /opt/oracle/instantclient_23_7/libclntsh.so ln -sf /opt/oracle/instantclient_23_7/libocci.so.23.7 /opt/oracle/instantclient_23_7/libocci.so Quarto passo Atualiza as libs do sistema echo /opt/oracle/instantclient_23_7 > /etc/ld.so.conf.d/oracle-instantclient Depois comando ldconfig Agora vem a parte em que demorei bastante entender: como estou usando PHP 7.4, precisei de uma versão específica do oci8 Caso você não tenha essa pacotes instalados apt-get install php-dev php-pear build-essential libaio1 Agora O PULO DO GATO pro PHP 7.4: wget https://pecl.php.net/get/oci8-2.2.0.tgz tar -xvzf oci8-2.2.0.tgz cd oci8-2.2.0 phpize ./configure --with-php-config=/usr/bin/php-config7.4 --with-oci8=instantclient,/opt/oracle/instantclient_23_7 make sudo make install Habilita a extensão e reinicia TUDO echo "extension =oci8.so" >> /etc/php/7.4/fpm/php.ini echo "extension =oci8.so" >> /etc/php/7.4/cli/php.ini echo "extension =oci8.so" >> /etc/php/7.4/apache2/php.ini sudo systemctl daemon-reexec && sudo systemctl restart apache2 sudo systemctl restart php7.4-fpm Mais uma coisa Testa pra ver se foi! No phpinfo.php e busca por oci8. Se aparecer, DEU BOM!

Passei HORAS apanhando pra fazer essa lib funcionar no PHP 7.4, então vou compartilhar o passo a passo QUE DEU CERTO pra mim. Se você tá aqui, provavelmente também tá no desespero. Bora tentar mais um tutorial!
Primeiro de tudo baixa esses trem da Oracle
Download do Oracle Instant Client e do SDK no site da Oracle
(Precisa criar conta na Oracle) pode ser versão mais recente
Arquivos:
instantclient-basic-linux.x64-23.7.0.25.01.zip
e
instantclient-sdk-linux.x64-23.7.0.25.01.zip
Segundo passo!
Você precisa criar uma pasta e fazer upload dos zips em seu servidor
mkdir /opt/oracle
Agora extrai os zips
cd /opt/oracle
unzip instantclient-basic-linux.x64-23.7.0.25.01.zip
unzip instantclient-sdk-linux.x64-23.7.0.25.01.zip
Terceira passo
É necessário criar um link simbólico
ln -sf /opt/oracle/instantclient_23_7/libclntsh.so.23.7 /opt/oracle/instantclient_23_7/libclntsh.so
ln -sf /opt/oracle/instantclient_23_7/libocci.so.23.7 /opt/oracle/instantclient_23_7/libocci.so
Quarto passo
Atualiza as libs do sistema
echo /opt/oracle/instantclient_23_7 > /etc/ld.so.conf.d/oracle-instantclient
Depois comando
ldconfig
Agora vem a parte em que demorei bastante entender: como estou usando PHP 7.4, precisei de uma versão específica do oci8
Caso você não tenha essa pacotes instalados
apt-get install php-dev php-pear build-essential libaio1
Agora O PULO DO GATO pro PHP 7.4:
wget https://pecl.php.net/get/oci8-2.2.0.tgz
tar -xvzf oci8-2.2.0.tgz
cd oci8-2.2.0
phpize
./configure --with-php-config=/usr/bin/php-config7.4 --with-oci8=instantclient,/opt/oracle/instantclient_23_7
make
sudo make install
Habilita a extensão e reinicia TUDO
echo "extension =oci8.so" >> /etc/php/7.4/fpm/php.ini
echo "extension =oci8.so" >> /etc/php/7.4/cli/php.ini
echo "extension =oci8.so" >> /etc/php/7.4/apache2/php.ini
sudo systemctl daemon-reexec && sudo systemctl restart apache2
sudo systemctl restart php7.4-fpm
Mais uma coisa
Testa pra ver se foi!
No phpinfo.php
e busca por oci8. Se aparecer, DEU BOM!