Este tutorial tem por objetivo explicar a instalação dos seguintes itens no Fedora Core 4:

 

  • Apache;
  • PHP;
  • Oracle OCI8.

As versões escolhidas para trabalhar foram às seguintes:

  • http-2.2.4;
  • php-5.2.1;
  • instantclientlinux32-10.2.

Inicialmente deverá estar instalado o cliente instantâneo que poderá ser baixado do site da Oracle. Após o término do download será necessário copiar o cliente instantâneo e SDK para o diretório /usr/local.

 

Segue abaixo os comandos utilizados para fazer as cópias:

  • # cp instantclient-basic-linux32-10.2.0.2-20060331.zip /usr/local
  • # cp instantclient-sdk-linux32-10.2.0.2-20060331.zip /usr/local

Ao término da cópia será necessário descompactar os dois arquivos utilizando o comando unzip, por exemplo.

  • # unzip instantclient-basic-linux32-10.2.0.2-20060331.zip
  • # unzip instantclient-sdk-linux32-10.2.0.2-20060331.zip

Para iniciar a configuração do OCI8 será necessário criar dentro de /usr/local uma pasta com o seguinte nome instantclient_10_2.  O cliente instantâneo irá extrair os arquivos dentro da pasta em /usr/local/instantclient_10_2 e o SDK na /usr/local/instantclient_10_2/sdk.

 

O passo seguinte é fazer a configuração da variável de ambiente LD_LIBRARY_PATH que será utilizada em seguida para a instalação do PHP. A forma correta de configuração é através de export conforme está apresentando abaixo:

  • # export LD_LIBRARY_PATH=/usr/local/instantclient_10_2

Em seguida é necessário criar um link simbólico para a biblioteca libclntsh da seguinte forma:

  • # ln -sf /usr/local/instantclient_10_2/libclntsh.so.10.1 /usr/local/instantclient_10_2/libclntsh.so

Após criar o link será necessário atualizar informações da LD para carregar as bibliotecas recém instaladas:

  • # ldconfig

Posteriormente será necessário editar o .bashrc do usuário oracle da seguinte maneira.

  • export ORACLE_HOME=/usr/instantclient_10_2
  • export LD_LIBRARY_PATH=/usr/instantclient_10_2
  • export ORACLE_BASE=oracle
  • export ORACLE_SID=sid
  • export ORACLE_OWNER=oracle
  • export ORACLE_TERM=xterm
  • export TNS_ADMIN=/home/oracle/OraHome_1/network/admin

Se houver necessidade, mas é opcional poderá editar o .bashrc usuário root.

  • export ORACLE_HOME=/usr/instantclient_10_2
  • export LD_LIBRARY_PATH=/usr/instantclient_10_2
  • export ORACLE_SID=sid

O segundo passo é fazer a configuração do Apache. Após o download do Apache será necessário fazer a extração do mesmo com seguinte comando:

  • tar xvfz httpd-NN.tar.gz

Ao termino da extração entre na pasta recém criada.

  • # cd httpd-NN

Em seguida será necessário fazer a configuração.

  • # ./configure

Logo depois a compilação e instalação respectivamente.

  • # make
  • # make install

E finalmente deverá ser feito a customização e teste do serviço

  • # vi /usr/local/apache2/conf/httpd.conf
  • # /usr/local/apache2/bin/apachectl -k start

O terceiro passo será necessário fazer a instalação e configuração do PHP. Após o download do PHP será necessário fazer a extração do mesmo com seguinte comando:

  • tar xvfz php-nnnn.tar.gz

Ao termino da extração entre na pasta recém criada.

  • #cd php-nnnn

Em seguida será necessário fazer a configuração.

  • # ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/apache2/conf --sysconfdir=/etc/php --with-mod_charset --localstatedir=/var --with-config-file-path=/etc/php --with-config-file-scan-dir=/etc/php --disable-debug --enable-pic --enable-dbase --disable-rpath --enable-inline-optimization --with-bz2 --with-db4 --with-curl --with-freetype-dir=/usr --enable-gd-native-ttf --without-gdbm --with-gettext --without-gmp --with-iconv --with-openssl --with-xml --with-expat-dir=/usr --with-zlib-dir= --with-layout=GNU --enable-bcmath --enable-exif --enable-ftp --enable-magic-quotes --enable-safe-mode --enable-sockets --enable-shmop --enable-sysvmsg --enable-track-vars --enable-trans-sid --disable-yp --enable-wddx --with-pear --enable-memory-limit --enable-calendar --enable-dbx --enable-dio --with-mime-magic --with-mysql --with-readline --enable-gd-jis-conv --enable-fastcgi --enable-discard-path --enable-force-cgi-redirect --enable-dba --with-gd --with-jpeg-dir=/usr/lib  --with-oci8=instantclient,/usr/instantclient_10_2

Logo depois a compilação e instalação respectivamente.

  • # make
  • # make install

Em seguida será necessário copiar o arquivo php.ini-dist para /usr/local/lib/php.ini e editar o arquivo php.ini e descomentar as linhas referentes ao oci8

Se as informações retornadas do banco saírem truncadas será necessário editar o .bashrc do usuário oracle e acrescentar esta linha:

  • export NLS_LANG="AMERICAN_AMERICA.WE8ISO8859P1"

Será opcional também editar o bashrc usuário root:

  • export NLS_LANG="AMERICAN_AMERICA.WE8ISO8859P1"

Após finalizar os três passos citados anteriormente crie um script de php que faça a conexão com banco de dados Oracle e verifique o resultado.