= Estabelecendo uma Conexão com um Banco de Dados Oracle = Para conectar-se a um banco de dados Oracle, utilize, como ''template'', o código abaixo (supõe-se que o código será executado em uma classe da camada Model): {{{ /* cria uma nova instância da classe wf_db */ $conn = &$this->factory->newInstance('wf_db'); /* * Conecta-se ao banco de dados * A porta padrão para o banco Oracle é: 1521 * oci8 é o driver do Oracle para o ADOdb */ $conn->connect('nome_database', 'host', porta, 'usuario', 'senha', 'oci8'); /* verifica se a conexão foi bem sucedida */ if ($conn) { /* executa uma query */ $recordSet = $conn->query('SELECT campo1, campo2 FROM esquema.tabela'); /* verifica se a query foi executada com sucesso */ if ($recordSet) { /* percorre os dados da consulta */ while (!$recordSet->EOF) { print_r($recordSet->fields); $recordSet->MoveNext(); } } } /* desconecta-se do banco */ $conn->disconnect(); }}} '''Atenção: a configuração do servidor apache2/php para conexão com o oracle NÃO vem pré-configurada com a instalação padrão do workflow, para tanto deve-se seguir o roteiro de instalação abaixo.''' '''OBS: todos os comandos devem ser executados com o usuário root''' = Configuração do servidor para acesso a banco Oracle (OCI) = == Instalação das bibliotecas da Oracle == Antes, de iniciar a instalação, verifique se a biblioteca libaio está instalada. Caso não esteja, instale-a através do {{{ apt-get install libaio }}} Crie o diretório onde a biblioteca ficará instalada: {{{ mkdir -p /opt/oracle/instantclient cd /opt/oracle/instantclient }}} Baixe os seguintes arquivos no diretório recém criado: http://download.oracle.com/otn/linux/instantclient/11106/basic.zip http://download.oracle.com/otn/linux/instantclient/11106/sdk.zip Execute os comandos abaixo para instalar as bibliotecas do Oracle: {{{ unzip basic.zip }}} {{{ unzip sdk.zip mv instantclient_11_1/* . rmdir instantclient_11_1 echo /opt/oracle/instantclient >> /etc/ld.so.conf ldconfig ln -s libclntsh.so.11.1 libclntsh.so ln -s libocci.so.11.1 libocci.so rm basic.zip sdk.zip }}} == Instalação da Extensão OCI8 == Agora, precisamos instalar a extensão OCI8 (que permite o PHP conectar-se com o ORACLE): {{{ mkdir -p /usr/local/src cd /usr/local/src }}} Baixar a extensão (link abaixo) no diretório recém criado: http://pecl.php.net/get/oci8-1.2.4.tgz Instale a extensão através dos seguintes comandos: {{{ tar zxvf oci8-1.2.4.tgz cd oci8-1.2.4/ phpize ./configure --with-oci8=shared,instantclient,/opt/oracle/instantclient make make install rm oci8-1.2.4.tgz }}} Adicione a linha "extension=oci8.so" (sem as aspas) no arquivo "/etc/php5/apache2/php.ini" logo após as outras declarações de extensões. Reinicie o serviço apache: {{{ /etc/init.d/apache2 restart }}}