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!

Apr 9, 2025 - 14:48
 0
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!