Como gerar um backup compactado no MySQL
O MySQL fornece uma ferramenta própria para realizar backups, que é o mysqldump. Indicamos utilizar esta ferramenta para fazer o backup de bancos de dados maiores que 100 MB.
Como o mysqldump funciona? Ele cria comandos SQL da estrutura e dados das tabelas e insere-os em um arquivo indicado.
Antes de seguir a leitura, recomendo que veja esse outro guia:
Como acessar arquivos da hospedagem via SSH
1. Exportar banco de dados MySQL para um arquivo .sql:
mysqldump --no-tablespaces -u [usuario] -p [banco] > backup.sql
Ao executar o comando acima, primeiro será solicitada a senha do seu banco de dados. Após isso, quando o comando for finalizado, será gerado um arquivo chamado backup.sql na pasta onde o comando foi executado (geralmente a raiz da hospedagem).
1.1. Utilize o comando abaixo para gerar um backup compactado:
mysqldump --no-tablespaces -u [usuario] -p [banco] | gzip > backup.sql.gz
O comando acima também vai gerar um backup do seu banco de dados, mas ele será compactado em tempo real no formato gzip e será salvo no arquivo backup.sql.gz.
E como eu faço para restaurar um backup?
2. Importar banco de dados MySQL a partir de um arquivo .sql:
mysql -u [usuario] -p [banco] < backup.sql
2.1. Utilize o comando abaixo para restaurar um backup em formato gzip:
gunzip < backup.sql.gz | mysql -u [usuario] -p [banco]
Mais detalhes sobre o mysqldump podem ser encontrados no manual online do MySQL.