Objetivo: Esse tutorial tem objetivo de auxiliar na instalação do
Firebird2 versão Class Server com a biblioteca
FreeAdhocUDF no
Debian. As UDF (user-defined-function) são funções externas inseridas no banco de dados pelos programadores com objetivo de facilitar algumas rotinas.
Pacotes utilizados:
- Firebird - FirebirdCS-2.0.4.13130-1.i686.tar.gz
- FreeAdhocUDF - FreeAdhocUDF_fb2x.so
- Xinetd - é um daemon que controla outros daemons. Daemons são tipicamente programas que controlam serviços de network, que rodam em longo prazo nos bastidores do sistema à espera para entrar em ação.
- UUID - uuid-dev
- Libstdc++ - libstdc++5
Instalação
Faça download do Firebird2 do site oficial:
Faça download da FreeAdhocUDF do site oficial:
Instalando Xinetd, UUID e Libstdc++ no Debian através do repositório:
# apt-get install xinetd uuid-dev libstdc++5
Instalando do Firebird2. Descompactar o tarball:
# tar -zvxf FirebirdCS-2.0.4.13130-1.i686.tar.gz
Acesse o diretório criado pela descompactação. Execute o instalador:
# sh install.sh
Aparecerá uma tela para digitar a senha do banco de dados; informe a senha desejada. Se apareceu a mensagem "Install completed", instalação concluída com sucesso!
Instalado a FreeAdhocUDF:
Copie o arquivo FreeAdhocUDF para o diretório do Firebird:
# cp FreeAdhocUDF_fb2x.so /opt/firebird/UDF/FreeAdhocUDF.so
Mude a permissão do arquivo:
# chmod 777 /opt/firebird/UDF/FreeAdhocUDF.so
Mude o arquivo de dono:
# chown firebird\: /opt/firebird/UDF/FreeAdhocUDF.so
Testes
Reinicie o serviço do Firebird:
# /etc/init.d/xinetd restart
Para testar se a biblioteca FreddAdhocUDF foi aceita pelo GDB, utilizaremos a função F_UPPER que está inserida dentro da biblioteca além de uma base de dados que tenha as funções declaradas.
Faça download da base:
Restaure a base de dados
# /opt/firebird/bin/gbak -C -V testISO.fbk teste.fdb
Onde:
- -C - comando para restaurar base;
- -V - comando para mostrar status da restauração;
- testISO.fbk - arquivo de backup;
- teste.fdb - base que será gerada.
Mude o arquivo de dono:
# chown firebird\: teste.fdb
Conecte na base, nesse caso usando o ISQL:
# /opt/firebird/bin/isql -u sysdba -p xxx teste.fdb
Onde:
- -u - usuário do banco de dados;
- -p - senha cadastrada no banco de dados;
- teste.fdb - endereço + base de dados.
Executando a função F_UPPER:
select F_UPPER (uuid) from uuidtest;
A função F_UPPER converte letras minusculas em maiúsculas. Caso o resultado seja visualizado em letras maiúsculas, a função está funcionando em seu banco de dados.
Distribuição
Linux utilizada: Debian Lenny kernel 2.6.26-1-686.
Adm. Rogério S Guimarães - rojeryo@gmail.com
Rogério, vlw! Instalação realizada com sucesso. Na parte dos Testes fiz o download da base, mas não cheguei a utilizá-la, resolvi criar uma já de uso de minha aplicação, um sistema de cobrança.
Obrigado!