Contribuição de Flaviano Silva do Ministério dos Transportes
Instalação com o Banco de Dados Oracle
Após verificar que possuí uma demanda na instalação do SEI com Oracle resolvi acrescentar esse item no Manual.
Todos os comandos terão o carácter # na frente.
1)Instalando OCI Client Oracle
Baixar o arquivo RPM para instalação, foi utilizado a versão do client 11 disponível no site da oracle http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
Devemos baixar os pacotes:
oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm oracle-instantclient11.2-sdk-11.2.0.4.0-1.x86_64.zip
2) Após fazer o download transfira os arquivos para o servidor de preferência coloque na pasta /tmp e faça a instalação em seguida:
#rpm -ivh /tmp/oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm #rpm -ivh /tmp/oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm
3) Agora precisamos baixar o pacote do oci8 (oci8-2.0.8.tgz), está disponível no link: http://pecl.php.net/package/oci8
Baixe o arquivo e envie para o servidor, após o envio execute os comandos para descompactar o arquivo:
#tar xvzf /tmp/oci8-1.4.7.tgz
Após descompactar é necessário mover a pasta oci8-2.0.8 /usr/lib/oracle/
#mv oci8-2.0.8 /usr/lib/oracle/
Acesse a pasta
#cd /usr/lib/oracle/oci8-2.0.8
Execute o comando phpize
#phpize
4) Agora é necessário configurar o php com oci8
Endereço da instalação do oracle, verificar se a versão instalada está no endereço padrão: /usr/lib/oracle/11.2/client64/lib/
Configurando o PHP com Oracle
#./configure --with-oci8=shared,instantclient,*/usr/lib/oracle/11.2/client64/lib/*
Compilando e instalado o oracle com php (estes comandos são executados dentro da pasta /usr/lib/oracle/oci8-2.0.8)
#make
#make install
5) Um passo importante para funcionar a conexão com Oracle é liberar os parâmetros do apache httpd_execmen e httpd_can_network_connect
#setsebool -P httpd_execmem 1
#setsebool -P httpd_can_network_connect 1
6) Agora é necessário criar o arquivo para apontar para a biblioteca do oci8
#echo -e "[OCI8]\nextension=oci8.so" >> /etc/php.d/oci8.ini
7) Reiniciar o apache
#service httpd restart
8) Para verificação pode-se criar um arquivo info.php
#echo -e "<?php phpinfo()?>" >> /var/www/html/info.php
9) Depois acesse via browser: http://IP_SERVIDOR/info.php, e localize a configuração para OCI8, se encontrar todo o restante da configuração ocorreu com sucesso.
10) É importante verificar se as portas para acesso estão liberadas 80, 443 e 1521, é possível testar com o telnet
#telnet IP_SERVIDOR_BANCO 1521
Trying IP_SERVIDOR...
Connected to SERVIDOR.
Escape character is '^]'.
Caso apareça a mensagem acima a conexão está liberada.
11) Importar as bases de dados SEI e SIP que estão na pasta:
SEI-BD-Oracle-v2.5.2 -> SEI_2_5_2.dmp
SEI-BD-Oracle-v2.5.2 -> SIP_2_5_2.dmp
*Para a Importação é necessário utilizar o IMP, aplicativo do Oracle, ou outra ferramenta que consiga importar o DUMP.
11) Configuração no SEI e SIP
'BancoSEI' => array(
'Servidor' => '//IP_SERVIDOR_ORACLE/INSTACIA_ORACLE',
'Porta' => '1521',
'Banco' => 'NOME_BANCO_SEI',
'Usuario' => 'NOME_USUARIO_SEI',
'Senha' => 'SENHA_BANCO_SEI',
'Tipo' => 'Oracle'), //MySql, SqlServer ou Oracle
'BancoSip' => array(
'Servidor' => '//IP_SERVIDOR_ORACLE/INSTACIA_ORACLE',
'Porta' => '1521',
'Banco' => 'NOME_BANCO_SIP',
'Usuario' => 'NOME_USUARIO_SIP',
'Senha' => 'SENHA_BANCO_SIP',
'Tipo' => 'Oracle'), //MySql, SqlServer ou Oracle
12) Agora é necessário fazer os Updates conforme a necessidade:
UPDATE "BD_SIP"."SISTEMA"
SET PAGINA_INICIAL = 'http://IP_OU_NOME_SERVIDOR/sip'
WHERE SIGLA='SIP';
UPDATE "BD_SIP"."SISTEMA"
SET PAGINA_INICIAL = 'http://IP_OU_NOME_SERVIDOR/sei/inicializar.php',
WEB_SERVICE = 'http://IP_OU_NOME_SERVIDOR/sei/controlador_ws.php?servico=sip'
WHERE SIGLA="SEI";
UPDATE "BD_SEI"."ORGAO"
SET SIGLA = 'SIGLA',
DESCRICAO = 'DESCRICAO DO ÓRGÃO',
TELEFONE = '(XX) XXXX-XXXX',
SITIO_INTERNET = 'www.dominio.com.br',
BAIRRO = 'XXXXXXXXXXXXXXXXXXXXXX',
CEP = '999999-999',
ENDERECO = 'XXXXXXXXXXXXXXXXXXXXXXX',
COMPLEMENTO = 'XXXXXXXXXXXXX',
SET ID_CIDADE = 'COD_CIDADE_TABELA_CIDADE'
WHERE ID_ORGAO = 0;
Pronto agora já deve está funcionando corretamente.