Qual é a maneira mais eficiente de implementar um cron job para fazer backup de um banco de dados MySQL e enviá-lo por e-mail para mim mesmo?

0

Qual seria a maneira mais eficiente de fazer o backup automático de um banco de dados MySQL, gzip e enviar por e-mail para uma conta específica?

Eu sou um pouco paranóico em perder o banco de dados do meu fórum e normalmente estou ocupado durante a semana e frequentemente esqueço de fazer um backup semanal (em vez disso, fazendo quinzenalmente ou mensalmente, o que não é tão ruim, mas menos freqüente do que eu gostaria). Configurá-lo com um cronjob e um e-mail (ou FTP / SFTP, como acabei de perceber que um dos bancos de dados seria grande demais para ser anexado em um e-mail) seria muito mais fácil, além de menos propenso. para mim esquecendo.

O que eu estou vendo agora seria:

mysqldump dbname > AAAA-MM-DD_dbname.sql gzip YYYY-MM-DD_dbname.sql Envie YYYY-MM-DD_dbname.sql.gz como anexo para um endereço de e-mail ou {S}, transfira-o por FTP para outro servidor e envie um e-mail informando que o backup e a transferência foram bem-sucedidos.

Existe uma maneira melhor de conseguir isso? Algum exemplo de como você conseguiu isso?

    
por James Valente 26.06.2010 / 03:23

1 resposta

1

Eu não acho que você pode fazer muito melhor do que o que você tem. Eu provavelmente usaria algo como o seguinte:

  • crie o despejo do banco de dados
  • gzip ou compactá-lo (tecnicamente opcional)
  • use scp ou rsync para copiar o arquivo para outro servidor
  • executa uma soma de verificação no servidor remoto para verificar a cópia (opcional)
  • excluir o despejo original do banco de dados (opcional)
  • envie um e-mail indicando sucesso

Ou se qualquer etapa deste falhar, saia e envie imediatamente um email explicando a falha. (Suponho que você tenha as ferramentas necessárias disponíveis, por exemplo, rsync ou scp , sha1sum ou md5sum , gzip , mail ou sendmail ou equivalente)

    
por 26.06.2010 / 04:01