segunda-feira, 13 de fevereiro de 2012

Backup de um banco de dados e recuperação de tabelas

  Se você tem o banco de dados MySQL instalado na sua máquina, passe a fazer o backup! Dependendo de período que são inseridos dados, você determina a frequência que são suas informações são salvas.

  Certa vez confirmei o comando update sem dizer em qual id deveria acontecer a mudança e todas as linhas de uma certa coluna foram modificadas. Aí é tarde!
  O primeiro passo é o procedimento para o backup. Eu uso o crontab e ele é ativado uma vez por dia. Para chamar o crontab, digite:

  $ crontab -e

  Para que todos os dias, às 21h, minha tabela ponto do banco de dados banco seja salva no arquivo ponto.sql do diretório documentos, digite:

  00 21 * * * mysqldump -uroot --password=xxx banco ponto > ~/documents/ponto.sql

  Então, quando acontecer um acidente, recupere sua tabela digitando este comando no Shell:

  mysql -uroot -p banco < ponto.sql

  Sendo:

  • -u: usuário. No caso, o root.
  • -p: a senha. Como não foi fornecida na linha de comando, um prompt pedirá a autenticação.
  • banco: o nome do banco onde a tabela será restaurada.
  • ponto.sql: o arquivo que todos os dias sofreu um dump salvando todas as informações de uma tabela dentro de um banco.

  Nada de despero! Tudo será restabelecido em segundos!