Recuperar Backup MySQL

Referencia: Guia do Hardware

A forma mais simples de fazer backup do mysql é gravar todos os arquivos no /var/lib/mysql.

sudo /etc/init.d/mysql stop
tar -zcvf mysql.tar.gz /var/lib/mysql/
/etc/init.d/mysql start
fazer o mesmo para o /var/log/mysql

Para recuperar tomar alguns cuidados:

Apos recuperar os arquivos de /var/lib/mysql, usar o chown -R mysql:mysql.

Apos recuperar os arquivos de /var/log/mysql, usar o chown -R mysql:adm

Garantir acesso ao debian-sys-maint com: GRANT ALL PRIVILEGES ON *.* TO ‘debian-sys-maint’@’localhost’ IDENTIFIED BY ‘xxx’, obtida no arquivo /etc/mysql/debian.cnf

Se mudar a versão do Mysql a unica forma e gerar um backup completo em SQL e depois recuperar na nova versão.

# mysqldump –add-drop-table -u root -p -x -e -A > backup.sql

O “-u root -p” especifica o usuário que será usado para acessar o banco de dados. A opção “-x” trava as bases de dados no momento em que cada uma é copiada, evitando qualquer problema de inconsistência, enquanto a “-e” é uma opção de otimização, que permite ao mysqldump combinar argumentos INSERT dentro das tabelas, o que torna tanto o backup quanto a restauração mais rápidos. Finalizando, a opção “-A” especifica um backup completo, de todas as bases de dados.

A opção “–add-drop-table” faz com que ele inclua instruções para que as bases sejam excluídas e recriadas automaticamente durante a restauração, evitando que você precise fazê-lo manualmente.

O backup pode ser então restaurado diretamente usando o comando abaixo:

# mysql -u root -p < backup.sql