quinta-feira, 16 de julho de 2009

Script de backup do Firebird em Centos

Bom, vamos lá.

Todo mundo sabe da segurança que é fazer backup de qualquer banco de dados existente. Muitas empresas não estão nem aí para a segurança dos dados, mas vc já pensou em toda o rebuliço que ia acontecer se acaso o banco de dados fosse perdido ou corrompido ??

Chega de blá blá e vamos para mão na massa.

Gostou do blog, curta a página no Facebook.

Primeiramente acesse seu querido servidor linux e crie o arquivo backup_firebird.sh desta maneira:

vi /etc/cron.daily/backup_firebird.sh

Fazendo isso ele vai criar o arquivo backup_firebird.sh e abri-lo para edição, nesse arquivo insira os seguintes comandos:

#!/bin/bash
#usuário do BD
login="SYSDBA"
# senha do usuário
senha="masterkey" # senha do usuário
#caminho da sua base de dados
dir="/basedados"
# data atual, dia, mês e ano, do backup para ser concatenada no arquivo backup
data=`date +%d%m%y`
# Uma dica na data é deixá-la no formato data=`date +%d`, desse maneira o arquivo de backup #ficará como backup16.gbk, backup17.gbk, sendo que o número é o dia do mês, dessa maneira #sobreescreve os backups de 30 dias atrás.
# pasta + arquivo do BD
banco="$dir/teste.fdb"
# pasta e arquivo de backup
backup="$dir/backup/backup-$data.gbk"
clear
# Imprime o nome do arquivo de backup
echo "Iniciando backup dia $data."

# Executa gfix para verificar a integridade
# executa o comando gfix para verificar a integridade do banco.
echo "Verificando a integridade dos dados..."
/opt/firebird/bin/gfix -v -f -user $login -password $senha $banco


echo "Validando os dados e eliminando fisicamente registros deletados..."
/opt/firebird/bin/gfix -sweep -user $login -password $senha $banco

# Realiza o backup
# executa o gbak para fazer o backup e gera o nome do backup com o nome do banco + a data
echo "Realizando o Backup para o Arquivo: $backup ..."
/opt/firebird/bin/gbak -b -user $login -password $senha $banco $backup

Feito isso salve o arquivo e vá até a pasta /etc/cron.daily,
chown root:root backup_firebird.sh, para setar o dono e grupo do arquivo
chmod 770 backup_firebird.sh, para permissão de execução do arquivo.

Feito isso, ainda na pasta /etc/cron.daily, tente executar o arquivo dessa maneira
./backup_firebird.sh

Se nenhum erro aparecer, seu backup será executado na hora que foi programada no arquivo /etc/crontab na linha /etc/cron.daily.

Lembre-se tbm de tirar esses backups do servidor onde está instalado o bd, pois se caso o servidor explodir, ou sofrer algum atentado, o backup da base de dados se encontra em algum lugar longe dali

domingo, 24 de maio de 2009

Instalando Firebird 2.1 no Centos 5.3

Bom, esse é meu primeiro post, então vamos lá.

Não irei passar aqui a instalação do servidor, suponho que o mesmo já esteja instalado.
Primeiramente acesse o seu servidor como root por ssh e faça o download do firebird utilizando

wget http://downloads.sourceforge.net/firebird/FirebirdSS-2.1.2.18118-0.i686.tar.gz

Depois de realizar o download no servidor através do wget, descompacte o arquivo utilizando

gzip -d FirebirdSS-2.1.2.18118-0.i686.tar.gz

Depois execute o comando

tar -xf FirebirdSS-2.1.2.18118-0.i686.tar

Depois de executar o comando acima, instale a biblioteca
compat-libstdc++-33, através do yum

yum install compat-libstdc++-33

Acesse a pasta FirebirdSS-2.1.2.18118-0.i686

Rode o script install.sh através do comando ./install.sh.
Depois de rodar o comando ele pergunta se você quer continuar com a instalação e pergunta a senha do usuário SYSDBA, digite a senha que você deseja e se tudo der certo seu servidor FB estará funcionando.

Para manipular o serviço do FB vc pode utilizar o utiliztário

service firebird (start, stop, restart, status)

se dessa maneira não funcionar, rode pelo executável do FB que fica em

/etc/init.d/firebird (start,stop,restart,status)


Outra coisa importante, o arquivo FDB ou GDB que é utilizado pelo firebird deve estar com dono e grupo no usuário Firebird, e permissão de escrita e leitura em ambos