Como faço o backup dos meus sites

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.

Relatórios com PHP e JasperServer

Quem trabalha com PHP sabe que fazer relatórios nessa plataforma é algo meio
complicado.
Tem aqueles que gostam de usar libs como FPDF, DomPDF e congêneres mas, não existe, não que eu tenha conhecimento, uma ferramenta para geração de relatórios escrita em PHP que seja tão eficiente quanto a combinação Jasper/iReport.

Apenas para contextualizar, falarei rapidamente aqui sobre o JasperServer e irei em outro post ou quem sabe em um screencast abordar melhor como funciona o Jasper, iReport e JasperServer.

Este post é para aqueles que de alguma maneira já geram via PHP, relatórios criados no iReport normalmente via scripts shell executados pela função exec. Continue reading

Screencasts do getOnCode();

Disponibilizei hoje o primeiro screencast do getOnCode();

Minha idéia é produzir sempre alguns screencasts, mas como esta atividade é um pouco trabalhosa, eu ainda não decidi qual será a frequência com que serão produzidos, isso depende da receptividade do público.

Bom, dê uma olhada lá e depois me diga o que achou.

Abraço.

Divulgação de Vagas/Oportunidades no getoncode.com.br

Eu comecei a divulgar vagas no site do getOnCode(); recentemente para agregar mais um serviço para os developers que escutam o podcast e visitam o site.

Eu sempre achei muito chatos e burocráticos esses sites de divulgação de vagas que tem por aí, o pessoal tem uma mentalidade do século XIX para certas coisas, por isso eu quero muito ajudar a comunidade divulgando vagas boas e da forma mais simples possíveis.

Na verdade, eu sempre quis fazer um  site de divulgação de vagas em TI, talvez você se lembre do Adler Medrado Jobs que eu implementei a um tempo atrás em Ruby on Rails mas acabei tirando do ar depois de algum tempo.

Naquela época eu recebi muito feedback positivo daquele trabalho e por isso eu estou voltando a implementar esta idéia só que de forma diferente pois eu irei usar a mesma estrutura que uso no blog do getOnCode(); para fazer este trabalho de divulgação, acho que desta maneira ficará mais fácil para eu manter isso tudo pois o meu dia-a-dia é muito corrido então acho que assim será mais fácil.

Se você quiser assinar o feed somente com as vagas de emprego basta assinar este endereço: feed://getoncode.com.br/tag/job/rss2.

Um outro ponto importante é de que toda vaga que for divulgada no getoncode.com.br será também divulgada pelo twitter do getoncode, facilitando assim para quem já segue o getOnCode(); podcast no twitter.

Eu pretendo apenas divulgar vagas que eu considere interessantes, vamos ver como que vai ser neste começo e com o tempo eu vou melhorando o serviço e ajustando conforme as necessidades forem surgindo. “I’ll go with the flow“.

Bom, é isso. Espero que vocês gostem e caso tenham alguma sugestão, não hesite em me falar, você pode me encontrar aquiaqui ou aqui.

[]s