segunda-feira, 16 de outubro de 2017

Instalar o PHP 7.0 com suporte ao ORACLE no Debian Stretch


Neste procedimento foi utilizado o ambiente abaixo.

Debian 9.2
Apache 2.4.25
Php 7.0.19
Oci8

Requisitos

Instale os pacotes abaixo:

# apt-get install php7.0 php7.0-common php7.0-dev build-essential php-pear alien libaio1

Oracle

http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

Faça o download do Oracle dependendo do seu sistema operacional

Basic – oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm
Devel – oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm

Após concluído o download, execute o comando para converter os arquivos rpm para deb

# alien oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm
# alien oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm

Instale os pacotes debian


# dpkg -i oracle-instantclient12.2-basic_12.2.0.1.0-2_amd64.deb
# dpkg -i oracle-instantclient12.2-devel_12.2.0.1.0-2_amd64.deb

OCI

Instalando o pacote OCI8

# pecl install oci8

Obs: Será solicitado o caminho do oracle client, coloque o caminho abaixo:

 instantclient,/usr/lib/oracle/12.2/client64/lib

Configurando o PHP.

OCI8 instalado agora é só informar ao PHP para utilizar a extensão.
Crie um arquivo chamado oci8.ini com o conteúdo: extension=oci8.so
Salve o arquivo na pasta /etc/php/7.0/mods-available/ e execute o comando

# phpenmod oci8

Configure as variáveis abaixo no apache2 :

# vi /etc/apache2/envvars

Acrescente no fim do arquivo essas duas linhas.

export LD_LIBRARY_PATH=/usr/lib/oracle/12.2/client64/lib
export ORACLE_HOME=/usr/lib/oracle/12.2/client64

Reinicie o apache

# /etc/init.d/apache2 restart



5 comentários:

Unknown disse...

Fiz esse procedimento em uma máquina virtual com as mesmas configurações descritas no POST e não funcionou. No phpinfo() não aparece o OCI8 como enabled. O engraçado é que já fiz isso no UBUNTU 16(Máquina real) e funcionou.

Fábio Antonaccio disse...

Na hora que ele pedir o caminho do oracle client, colocar o caminho onde vocë instalou, verifica se funciona. Se funcionar me avise pra eu alterar o procedimento.

Fábio Antonaccio disse...

Atualizei o procedimento, tenta novamente, agora acho que vai dar certo.

Will disse...

Obrigado, salvou meu couro. tentei vários tutoriais e enfim encontrei esse, deu tudo certo agora!

Fábio Antonaccio disse...

Que bom, @Will, fico feliz em ajudar.