anúncios

domingo, 27 de outubro de 2019

Instalando e Configurando ambiente PHP no Fedora

Na postagem Integração do Oracle Client no PHP com Debian/Ubuntu , foi explicado os procedimentos no Debian/Ubuntu. Então, o objeto deste howto é explicar os procedimentos de instalação e configuração do ambiente PHP com as extensões dos SGBDs MySQL, PostgreSQL, OCI8 e módulos PHP usuais na distribuição Fedora 30. A maioria dos procedimentos são os mesmos, mas no Fedora tem algumas particularidades.

Observação: O Fedora 30 já inclui no repositório o PHP 7.3.

1. Instalação dos pacotes Apache, PHP e extensões ao SGBD MySQL, PostgreSQL e posteriormente do OCI8

# dnf install -y httpd php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json php-curl php-soap php-pgsql

2. Download do pacote Oracle Client
Pacotes oracle-instantclient19.3-basiclite-19.3.0.0.0-1.x86_64.rpm, oracle-instantclient19.3-sqlplus-19.3.0.0.0-1.x86_64.rpm , oracle-instantclient19.3-devel-19.3.0.0.0-1.x86_64.rpm

PS: Até a data de publicação deste howto a versão corrente do Oracle Cient é 19.3, então no geral basta substituir a versão que for a mais recente.

3. Instalação dos pacotes do download
# dnf install oracle-instantclient19.3-basic-19.3.0.0.0-1.x86_64.rpm
# dnf install oracle-instantclient19.3-devel-19.3.0.0.0-1.x86_64.rpm
# dnf install oracle-instantclient19.3-sqlplus-19.3.0.0.0-1.x86_64.rpm


4. Criar o arquivo oracle.conf no diretório /etc/ld.so.conf.d/ e dentro do arquivo adicionar
/usr/lib/oracle/19.3/client64/lib
$ sudo vim /etc/ld.so.conf.d/oracle.conf

5. Atualizar as bibliotecas compartilhadas do sistema $ sudo ldconfig

6. Exportar a variável ORACLE_HOME

$ export ORACLE_HOME=/usr/lib/oracle/19.3/client64/

7. Download do código fonte do oci8 e extrair os arquivos e fazer a compilação.

# pecl download OCI8
# tar zxvf oci8-2.2.0.tgz
# cd oci8-2.2.0/
# phpize
# ./configure --with-oci8=instantclient,/usr/lib/oracle/19.3/client64/lib
# make install


8. Habilitar o oci8.ini no diretório de módulos do PHP
# vim /etc/php.d/oci8.ini
extension=oci8.so
extension=pdo_oci.so
9. Habilitar o PHP no Apache
Adicione o .php no arquivo /etc/httpd/conf/httpd.conf
< IfModule mime_module >
   AddType text/html .php .phps
< /IfModule >
10. Habilitar, iniciar e verificar o status do Apache
# systemctl enable httpd
# systemctl start httpd
# systemctl status httpd


11. Testar com a função phpinfo() no info.php se a extensão Oracle foi habilitada
$ sudo vim /var/www/html/info.php
< ?php
phpinfo();


Confere os screenshots abaixo:





Se exibir como no screenshot, então a extensão Oracle no PHP foi habilitada corretamente.

12. Testar conexão com banco de dados Oracle no PHP
Agora para confirmar, teste a conexão com Oracle no script PHP testeconectaoracle.php
< ?php
try{
$conn = new PDO('oci:dbname=//127.0.0.1:1521/testedb; 'oracleuser','password');
if($conn) {
echo "database conectado";
}
}catch (PDOException $e){
// report error message
echo $e->getMessage();
}


No browser http://localhost/testeconectaoracle.php
Com isso, irá aparecer a mensagem "database conectado" , se as credencias do usuário, password e banco estiverem corretas.

Feito!

Nenhum comentário:

Postar um comentário