Arquivo de junho \20\+00:00 2013
SQLite3 simples backup
Publicado por Pablo Alexander em linux em 20 de junho de 2013
Pessoal, ultimamente estou meio desligado do blog, mas eu ainda estou vivo! De qualquer forma resolvi deixar uma dica de como fazer uma backup em banco de dados SQLite3 já que essa semana tive que criar uma rotina no meu servidor para fazer um backup do sistema de um cliente que era feito em Rails.
O backup em SQLite3 não tem segredo, para falar a verdade é fácil, vamos criar um script e usar duas ferramentas o sqlite3 e o cron, eu não acho necessário ter um backup para cada dia do mês, o ideal seria um para cada dia da semana julgando o tamanho da aplicação e se o banco de dados corromper dificilmente vai demorar mais de sete dias para perceberem que não está funcionando o sistema (quando normalmente demora somente um segundo!).
No arquivo do Cron o crontab vamos criar sete agendamentos um para cada dia da semana que serão executados em um horário de baixa atividade do sistema para evitar um possível corrompimento no banco de dados, eu normalmente uso 01:01hs da madrugada já que a maioria das pessoas comuns está dormindo ou não está trabalhando. O script que vamos usar se chama backup.sh que recebe um parâmetro que será usado para determinar qual arquivo será gravado. Porque usar um script se o backup pode ser feito com uma linha de comando, a resposta é simples supondo que você tenha mais de um sistema que precise ser feito backup no mesmo servidor, com o script podemos configurar um backup para cada sistema e fazer todos os backup’s de uma vez, assim evitamos de sobrecarregar o sistema de tarefas.
backup.sh:
#!/bin/bash # # Script para gerar o backup nos bancos de dados # Desenvolvido por Pablo Alexander # pablo@cloudwall.com.br # www.cloudwall.com.br # Gera o backup da (Empresa do Cliente...) sqlite3 /srv/app/sistema/db/production.sqlite3 '.dump' > /root/backup/sistema_0$1.sql # Registra o ultimo backup echo Ultimo backup :`date` >> /root/backup/backup.log
crontab:
# Gera o backup de domingo 1 1 * * 0 root /root/script/backup.sh 1 # Gera o backup de segunda 1 1 * * 1 root /root/script/backup.sh 2 # Gera o backup de terça 1 1 * * 2 root /root/script/backup.sh 3 # Gera o backup de quarta 1 1 * * 3 root /root/script/backup.sh 4 # Gera o backup de quinta 1 1 * * 4 root /root/script/backup.sh 5 # Gera o backup de sexta 1 1 * * 5 root /root/script/backup.sh 6 # Gera o backup de sábado 1 1 * * 6 root /root/script/backup.sh 7
Ultimos Comentários