Pesquisar este blog

sábado, 24 de janeiro de 2009

Firebird

Neste post vou colocar passo-a-passo o que é necessário para você instalar o Firebird em seu servidor cPanel. Este processo também pode ser útil em outros servidores ou sistemas, com uma ou outra modificação. Neste post você terá o processo de instalação e compilação do sistema e de tudo relacionado ao correto funcionamento do Firebird.

Para mais informações sobre o Firebird eu sugiro o ótimo portal (em portugues): http://www.firebase.com.br/

1. Baixe o FireBird para o seu servidor:

cd /opt/
wget http://nchc.dl.sourceforge.net/sourceforge/firebird/Firebird-2.0.3.12981-1.tar.bz2

2. Compile e instale o módulo manualmente:

tar -jxf Firebird-2.0.3.12981-1.tar.bz2
mv Firebird-2.0.3.12981-1 firebird
cd firebird
./autogen.sh
make
make install

Ele irá colocar algumas mensagens na tela como:


Firebird classic 2.0.3.12981-1.i686 Installation
Press Enter to start installation or ^C to abort
Please enter new password for SYSDBA user: (Enter here SYSDBA user password and press Enter key)
firebird database Installed successfully

3. Adicione o /usr/local/firebird/bin/ ao seu "caminho" default no servidor.

Você pode editar o arquivo /etc/profile ou executar via comando shell mesmo:

export PATH=$PATH:/usr/local/firebird/bin/

Agora vamos checar se está tudo correto e se o Firebird está sendo executado normalmente com alguns testes simples. Abra o arquivo /opt/interbase/SYSDBA.password para ver a senha "root" (que no FireBird é chamado de usuário SYSDBA) e execute:

gsec -display

Este comando deve mostrar a lista dos usuário, no caso como esta é uma primeira instalação deverá mostrar apenas o usuário SYSDBA.

Agora vamos testar a conexão com um banco de dados de testes do próprio Firebird:

isql /usr/local/firebird/examples/empbuild/employee.fdb

Isso deve mostrar algo como:

[root@server]# isql /usr/local/firebird/examples/empbuild/employee.fdb
Database: /usr/local/firebird/examples/empbuild/employee.fdb
SQL> SHOW TABLES;
COUNTRY CUSTOMER
DEPARTMENT EMPLOYEE
EMPLOYEE_PROJECT JOB
PROJECT PROJ_DEPT_BUDGET
SALARY_HISTORY SALES
should display all tables from this database

SQL> quit;
[root@server]#

Agora que finalizamos a primeira parte - a instalação do FireBird vamos compilar o servidor Apache e o PHP para o seu correto funcionamento. O módulo do Firebird não existe na compilação padrão do cPanel, teremos de adiciona-lo manualmente.

Para o PHP4 edite o arquivo /var/cpanel/easy/apache/rawopts/all_php4 e para o PHP5 edite o arquivo /var/cpanel/easy/apache/rawopts/all_php5 e adicione uma única linha em ambos:

--with-interbase=/opt/firebird/

Execute o /scripts/easyapache (recompilação do Apache/PHP) normalmente, você pode usar seu próprio profile atual. Quando terminar verifique no PHP.ini se as linhas abaixo existem e edite-as caso seja necessário para ficarem iguais (geralmente o magic_quotes_sybase é colocado como Off):

magic_quotes_sybase = On ; Use Sybase-style magic quotes (escape ' with '' instead of ')
extension=php_interbase.so

Feche e execute:

service httpd restart

Instalação completada.

Uma observação é necessária, caso você não saiba mexer com o Firebird não tente oferecer isso a seus clientes ainda. Na Megahost estamos trabalhando com um sistema (add-on) a ser colocado no cPanel que facilita a criação de banco de dados por parte dos usuários, mas até lá estamos fazendo tudo manualmente com as ferramentas do próprio Firebird.

Você terá também de configurar o arquivo /usr/local/firebird/firebird.conf (cuidado para não liberar acessos inseguros) e liberar a porta 3050 para acesso remoto (não recomendável nem mesmo para o MySQL, mas isso é assunto para outro post).

Aviso: Todos os tutoriais postados pelo autor foram testados em ambiente de produção. Porem o mesmo não se responsabiliza por problemas ou bugs existentes nos sistemas usados de terceiros ou por erros durante a instalação dos recursos/scripts testados - o uso dos mesmos é por conta e risco de seus usuários

2 comentários:

Anônimo disse...

SHOW de bola.... Tudo funciona normalmente no tutorial, eu consigo acesso a base da dados de teste, ok.

Mas e aí ?

Como o meu cliente pode criar uma base de dados automaticamente ?

Anônimo disse...

Num leva a mal mas em q pasta q eu coloco os banco de dados?
c puder me ajudar... eleandro@foxdobrasil.com.br