Esse é meu último post de 2011, então, feliz ano novo.
Eu tenho um VPS com linux instalado para ser o servidor dos meus sites, é um VPS bem simples.
Nele eu tenho instalado os servers Apache e MySQL, sei que não é o ideal manter todos os serviços em um único servidor mas assim está me atendendo e o custo fica mais baixo.
Bom, eu não estou escrevendo este post para falar do meu ambiente e sim da maneira como eu faço backup dele.
Periodicamente eu executo manualmente (e isso que me enche um pouco o saco) os comandos abaixo:
1- Crio um diretorio para o backup
Exemplo: /home/adler/backup/31122011
2- Entro no diretório criado acima
cd /home/adler/backup/31122011
3- Gerar o dump de todos os bancos de dados que estão no servidor MySQL
mysqldump –all-databases –user=darthvader –password > dump_31122011.sql
4- Copio os arquivos que serão salvos no backup
cp -R /caminho/para/os/arquivos/ .
5- Gerar um backup tar.bz2 de todos os arquivos (dos sites e o dump do banco de dados) – Eu prefiro o algoritimo bz2 que apesar de ser mais lento, possui uma taxa de compressão mais alta
tar cjvf /home/adler/backups/backup.31122011.tar.bz2 /home/adler/backups/31122011
6- Testar se o pacote foi gerado corretamente
tar tjvf /home/adler/backup.31122011.tar.bz2
7- Por fim, copiar os arquivos para meus HDs de backup usando SCP
scp user@seuendereco.com.br:/caminho/para/o/backup/backup.31122011.tar.bz2 ~/backups/backup.31122011.tar.bz2
Pronto. Eu sei que posso melhorar muito este processo, mas, como eu tenho poucos sites e todos no mesmo server ainda não senti necessidade disso, mas eu agradeceria se você pudesse compartilhar a maneira como você lida com esse tipo de processo nos comentários.
Nota: Como todos os sites neste server são particularmente meus, não preciso fazer o backup individual de cada um.
Se eu tivesse sites de clientes neste server, provavelmente eu faria os backups individualmente.
Adler, só por curiosidade, porque voce não joga todas as rotinas para um shell script e executa com um cronjob?
Só pra reforçar o porque da pergunta, é porque é dessa forma que fazemos em nossos servidores no trampo.
Pois é, porque sempre quando penso em fazer isso eu fico com preguiça e também por que o scp do server para minha máquina seria meio difíceis por diversas restrições.
Grande Adler! Feliz Ano novo para você e toda a família!
De fato, o procedimento de backup é simples mas enche um pouco o saco… hehehe
Muito boa a dica. Este ano pretendo adquirir um VPS e adotar uma política de backup parecida.
Parabéns pelo post!!
Valeu mano.
Feliz ano novo.
Talvez uma combinação de shellscript e rsync torna-se o processo mais automatizado e ai sobraria mais um tempinho pro video-game
Tenho um esquema de backup que funciona mais ou menos assim:
No Servidor VPS:
- de x em x horas é feito o backup das bases e salvo num diretorio databases/backups
Numa maquina local q fica sempre ligada ( porem essa tarefa pode ser feita apenas qdo a pessoa quiser )
- de x em x horasé rodado o rsync pra ver o q mudou no diretorio /home/site , o rsync trata de copia apenas q foi alterado
- o mesmo procedimento pra o /databases/backup
depois disso o cara ainda pode compactar, mas eu deixo os arquivos soltos, qdo eu preciso reenviar é so subir.
o shellscript local é mais ou menos assim:
#!/bin/bash
DATAHORA=`date +%Y-%m-%d_%H-%M`
LOG=~/backups/logs/site-$DATAHORA.log
rsync -Crvz –update user@fsite.com.br:backups/ ~/backups/site.com.br/backups/ >> $LOG
rsync -Crvz –update –exclude-from ‘/home/kingkong/backups/site.com.br/public_html-exclude.txt’ user@site.com.br:public_html/ ~/backups/site.com.br/public_html/ >> $LOG
cat $LOG | mutt -s ‘KingKong Backup Concluido ‘$DATAHORA meuemail@gmail.com
É claro que não existe a maneira correta de fazer backup, o correto é a q mais se enquandra nas suas necessidades, mas trocando ideias vamos conhecendo outras formas e adaptando as nossas
Feliz 2012!!!!
Opa.
A idéia do Rsync é bacana mesmo.
Obrigado por compartilhar, certamente será útil para mais um monte de gente.
Valeu!