Automysqlbackup: Melhor ferramenta de backup para o MySQL?

12 Comentários

O MySQL é provavelmente o motor de base de dados mais usada em todo o mundo, dando suporte aos mais diversos serviços. Tudo o que é plataformas open source como é o caso do wordpress, Joomla ou Drupal, recorrem ao MySQL como base de dados.

E como fazer facilmente backup das bases de dados no MySQL? Conheça o Automysqlbackup.

mysql_00


Como sabemos, as bases de dados são normalmente o repositório de toda a informação de muitas aplicações e sites. De que vale um site profissionalmente desenvolvido se não possui informação? Isto para dizer que a informação é muito valiosa e em muitas vezes única, é por isso importante fazermos cópias de segurança (backups), para prevenir alguma perda indesejada.

Para quem usa o MySQL, o Automysqlbackup é a ferramenta perfeita para backups.

Principais características

  • Notificação dos backups via e-mail
  • Compressão e encriptação dos backups
  • Possibilidade de configurar a rotação dos backups
  • Backups incrementais

Vamos então passar à acção (Testado no CentOS)em funcionamento essa ferramenta que é gratuita.

1 – Download e instalação

mkdir /opt/automysqlbackup
cd /opt/automysqlbackup
wget http://ufpr.dl.sourceforge.net/project/automysqlbackup/AutoMySQLBackup/AutoMySQLBackup%20VER%203.0/automysqlbackup-v3.0_rc6.tar.gz
tar zxf automysqlbackup-v3.0_rc6.tar.gz
./install.sh

Nota: O ficheiro de configuração fica localizado em /etc/automysqlbackup com o nome myserver.conf

Agora só temos de proceder as alterações que pretendemos incluir, como por exemplo definir quais as bases de dados, utilizador de acesso às bases de dados, directório de backup, endereço de e-mail, etc.

# Utilizador de acesso ao servidor MySQL

USERNAME=root

# Password de Acesso

PASSWORD=naovoudizer

# Endereço IP ou hostname da máquina onde está a correr o servidor MySQL

DBHOST=localhost

# Lista de Base de dados a fazer backup ex: “DB1 DB2 DB3″

DBNAMES=”ppinto pplware siteA”

# Directório de Backup

BACKUPDIR=”/home/ppinto/backups”

# Endereço de e-mail para receber o log

MAILADDR=ppinto @ pplware.com

Depois de realizada a configuração, podem usar o comando seguinte para validar todos os parâmetros.

automysqlbackup /etc/automysqlbackup/myserver.conf

O Automysqlbackup faz backups diários mas o administrador pode facilmente configurar esta ferramenta para que os backups possam ser realizados a qualquer hora.

Comentários

12

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

  1. Avatar de nope
    nope

    Embora o artigo esteja na categoria “Linux”, acho que seria importante referir isso no título.

    Para windows existe o mysqlbackupftp ( http://mysqlbackupftp.com ) . É software pago mas tem uma versão free totalmente funcional. No entanto, a versão free só faz backup a duas BD’s. O sinal mais é ter suporte para envio via ftp, o que pode dar imenso jeito caso o servidor dê o berro.

    Com o automysqlbackup, para linux, também se pode enviar via ftp mas será necessário criar um script em bash e pô-lo no cron. Também existem alguns script na net para o efeito, basta usar o google … para além disto pode-se sempre criar um caminho via sshfs ou ftpfs e gravar para lá os backups sem a necessidade de criar um script.

    At the end of the end, façam regularmente backups das vossas BD’s. Nunca se sabe …

    1. Avatar de Miguel
      Miguel

      Existe o mysqldumper que correm na propria maquina se tiver apache, e podem abrir o php a partir de qualquer OS.

  2. Avatar de Marco Nunes

    bom artigo, andava mesmo a precisar de algo assim pró meu servidor 🙂

    1. Avatar de José Maria Oliveira Simões
      José Maria Oliveira Simões

      Crie um script com o nome fullbackup.sh.
      #!/bin/bash
      set -xv
      cd /opt/backups/mysqlbackup
      mysqldump –all-databases > dump-$( date ‘+%Y-%m-%d_%H-%M-%S’ ).sql -u root -p
      cd –

  3. Avatar de Daniel M.
    Daniel M.

    A pass está errada, não funciona :/

    1. Avatar de nope
      nope

      You made a funny !!!

  4. Avatar de Modem
    Modem

    O Sw é de 2011, acho que isto ainda está a ser desenvolvido?

  5. Avatar de Marco
    Marco

    para quem tiver acesso aos serviços cron da maquina nada melhor que o cron a executar o mysqldump

    1. Avatar de José Maria Oliveira Simões
      José Maria Oliveira Simões

      Nada como ser cuidadoso e efectuar um cold backup (salvaguarda a frio).
      pode-se criar um script com o nome coldbackup.sh, por exemplo:
      #!/bin/bash
      #set -xv
      echo “A baixar o motor da base de dados mysql”
      /etc/init.d/mysql stop
      echo “O motor da base de dados mysql foi parado”
      backup_date=`date +%Y-%m-%d-%H-%M`
      backup_parent_dir=”/opt/backups/mysqlcopy”
      backup_dir=${backup_parent_dir}”/mysql-“${backup_date}
      echo “A efectuar o cold backup das varias base de dados mysql”
      mkdir -p ${backup_dir}”/”
      cp -R /var/lib/mysql/* ${backup_dir}”/”
      echo “Terminado a primeira fase do backup a frio”
      cd ${backup_dir}
      echo “A efectuar a segunda fase do backup a frio”
      tar czf ${backup_dir}”.tar.gz” ${backup_dir}
      echo “O backup das varias base de dados mysql terminou”
      cd –
      echo “A iniciar o motor da base de dados mysql”
      /etc/init.d/mysql start
      echo “O motor da base de dados mysql foi levantado”

  6. Avatar de Bruno Silva
    Bruno Silva

    Gostaria de saber se esta ferramenta faz backups automáticos em bases de dados Postgres

    1. Avatar de Pedro Pinto

      Esta não, mas também há versão para Postgres. Procura por Autopostgresqlbackup