Faça backup do MySQL e envie para seu e-mail

Neste artigo será ensinado como se fazer um backup de um banco de dados MySQL e enviá-lo para um e-mail automaticamente.

[ Hits: 35.876 ]

Por: Perfil removido em 29/11/2005


Requisitos



A máquina usada terá que ter instalado e funcionando um banco de dados MySQL.

Também será necessário o programa mutt (um cliente de e-mail em modo texto).

Página oficial do MySQL:
Página oficial do mutt:
Aconselho que sejam instalados os pacotes próprios para sua distribuição.

Os passos a seguir foram testados em duas máquinas, uma com Debian e outra com Slackware.

    Próxima página

Páginas do artigo
   1. Requisitos
   2. Configurando
   3. Executando a rotina
   4. Restaurando o backup
   5. Conclusão
Outros artigos deste autor

Bootsplash no Slackware - HowTo

Lançamento do GFP 0.1.4.5 - Gerenciador Financeiro Pessoal

Um tour pelos players de vídeo para Linux

Como garantir compatibilidade entre Kylix e Delphi

Sudoers 1.8.12 - Parte II - Manual

Leitura recomendada

Monitoração permanente do seu sistema operacional

Controle de banda sem mistérios para servidores

Reduzindo problemas de atualizações no Debian, Ubuntu e derivados - Parte 2

Como gerenciar cotas de disco

Clonando HD no Linux

  
Comentários
[1] Comentário enviado por marcossilva em 30/11/2005 - 01:01h

Bem legal o seu artigo, simples, fácil de entender, e funciona direitinho, exceto a parte onde vc coloca o .tgz no nome do arquivo, aqui no meu computador eu tive q tirar essa parte, pois dava um erro e ele n encontrava o arquivo para anexar...
fora isso, show de bola :D
T++

[2] Comentário enviado por removido em 30/11/2005 - 10:19h

eu sempre uso sem esse ".tgz" no final, coloquei mesmo pra ficar bonitinho.

basta tirar o .tgz na hora de compactar e na hora de mandar o e-mail que funciona perfeito.

Valeu ai marcossilva nem tinha reparado..

abraços

[3] Comentário enviado por nexushu em 30/11/2005 - 12:18h

Valeu cara fazia tempo que eu estava vendo como eu poderia fazer esse tipo de backup ficou legalzinho ate mais

Abraços

[4] Comentário enviado por edmafer em 30/11/2005 - 13:35h

Aeeee mininu!

Excelente artigo!

[5] Comentário enviado por y2h4ck em 30/11/2005 - 23:03h

I ae cara, a sua ideia e ate legal, mas imagina fazer backup de uma base de dados de 10 Gb heuehueh :) haja conta de e-mail :]

Abracos

[6] Comentário enviado por removido em 01/12/2005 - 00:34h

y2h4ck ai vc já quer milagre.

Até local vai ser ruim de realizar esse backup.

Fiz isso pensando em coisas pequenas..
Algum website, ou um sistema pequeno.

abraços

[7] Comentário enviado por wanderleihuttel em 01/12/2005 - 11:00h

Show de Bola esse artigo...
Arquivos de até 10 megas dá boa...
é interessante até pra mandar os LOGS, que as vezes são grandes....
Wanderlei

[8] Comentário enviado por mgouveia em 02/03/2006 - 23:39h

Simples, direto e funcional...

Apenas uma pequena correção no exec_backup. A linha origalmente colocada:
#Compactando a pasta
tar -czvf /root/backup_/BKP`date +%d%m%y` /root/backup_/BACKUP_`date +%d%m%y`.tgz

Deve ser modificada a localização do ".tgz" para:
#Compactando a pasta
tar -czvf /root/backup_/BKP`date +%d%m%y`.tgz /root/backup_/BACKUP_`date +%d%m%y`

Era por isso que não funcionava para alguns...



[9] Comentário enviado por slaypher em 10/05/2007 - 23:56h

Olá,

Outro detalhe importante que faltou ressaltar é o chmod 755, seria melhor usar chmod 700, pois você deixa no script a senha do root do banco de dados mysql, então seria melhor só o root ter acesso ao script. Mas fora isso, excelente artigo!

[]'s

[10] Comentário enviado por comfaa em 03/05/2011 - 19:39h

tem como rodar dentro do PHP,
estou com esse probleminha pra achar uma solução.
o problema maior é que eu preciso fazer backup das procedures tmb

abraços

[11] Comentário enviado por wanderleihuttel em 03/05/2011 - 19:58h

Se você tiver permissão no servidor, é possível executar um shell script com a função system do PHP:
system('sudo /usr/scripts/backup_mysql.sh');

Abraço


Contribuir com comentário