terça-feira, 23 de setembro de 2008

Guia : Como instalar Apache2 + PHP5 + Instant Client e oci8 no Ubuntu

Postado por Wendel Neves

Objetivo Geral: Instalar o Apache2 com PHP5 e o Instant Client do Oracle para poder conectar remotamente a base de dados Oracle.

Objetivo Pessoal: Um dos clientes da minha consultoria, a VoxTI, utiliza um banco de dados Oracle e para melhor atende-lo decidi criar uma aplicação em php que utiliza-se o Oracle como banco de dados.

Versão do Sistema Operacional: Ubuntu 8.04 Server Edition

Publico Alvo:Desenvolvedores web e administradores de sistemas.

Instale o Ubuntu normalmente, sem selecionar nenhuma perfil durante a instalação.

Logo que o sistema bootar, digite o comando "sudo -i", para ficar com poderes e permissões de root, já que o ubuntu por padrão não deixa que o usuario root logue diretamente.
Após isso instale o Apache2
Instale agora o modulo PHP5 e as bibliotecas:
Instale agora os pacotes nescessarios para compilar e o php-pear:
Instale agora a biblioteca libaio1, sem ele aparentemente o cliente do Oracle não funciona corretamente:
Terminada essa parte da instalação, vá ao site da oracle, http://www.oracle.com/technology/tech/oci/instantclient/index.html


Atualmente o nome dos arquivos que devemos baixar são os Basic.zip e o SDK.zip, normalmente eu salvo os arquivos dentro da pasta "/home/ubuntu/Documents/".

Quando o download terminar, crie uma pasta para hospedar os arquivo quando os mesmos forem descompactados:

mkdir /opt/oracle

Agora, mova os arquivos .zip da pasta documents para a pasta que voce acabou de criar

mv /home/ubuntu/Documents/*.zip /opt/oracle

Agora vá para o diretorio /opt/oracle

cd /opt/oracle

E descompacte os arquivos

unzip \*.zip

Caso voce não tenha o unzip, utilize o bom e velho apt-get install unzip ;-) e prontinho...

Depois de descompactar, vamos renomear um dos diretorios para facilitar a configuração:

mv instantclient_11_1 instantclient

va para a pasta

cd instantclient

e crie dois links simbolicos que o cliente do Oracle exige

ln -s libclntsh.so.11.1 libclntsh.so
ln -s libocci.so.11.1 libocci.so

Agora criaremos um diretorio de fontes dentro do /opt/oracle para guardar as bibliotecas oci8

mkdir /opt/oracle/src

Agora vamos mudar para a pasta recem criada

cd /opt/oracle/src

E depois vamos baixar o arquivo compactado oci8 usando o pecl

pecl download oci8

Descompacte as bibliotecas

tar xvf oci8-1.2.4.tgz

Agora, entre no diretorio recem criado

cd oci8-1.2.4

E digite o seguinte comando:

phpize

Vamos agora definir uma variavel de ambiente chamada ORACLE_HOME para que o cliente saiba onde achar as bibliotecas do oracle...

export ORACLE_HOME=/opt/oracle/instantclient

para checar se esta tudo correto, digitamos:

echo $ORACLE_HOME

e a resposta terá de ser igual ao o que digitamos antes :-D

Agora vamos configurar o oci8 para instalar com os parametros corretos e nescessarios:
./configure --with-oci8=share,instantclient,/opt/oracle/instantclient

e digitamos make para compilar:

make

apos a compilação terminar, executamos um make install para instalar definitivamente o cliente

make install

Agora vamos inserir a extensão oci8 no php.ini e no cli.ini para o php saber que pode utilizar o oci8

echo extension=oci8.so >> /etc/php5/apache2/php.ini

echo extension=oci8.so >> /etc/php5/cli/php.ini

Agora vamos reiniciar o apache

/etc/init.d/apache2 restart

e pronto... bora fazer suas aplicações conversarem com esse banco de dados fantastico

0 comentários: