Para fazer um backup de um banco de dados MySQL (dump) em um servidor que não possuia o phpmyadmin instalado hoje precisei recorrer ao bom e velho terminal do Linux.

A tarefa foi muito mais fácil do que imaginava, mas mesmo assim resolvi compartilhar aqui essa dica aqui no blog, pois imagino que também será útil para os leitores do blog (ou mesmo para mim devido à minha estupenda memória).

Para exportar um banco de dados MySQL via terminal do Linux – o popular executar um dump do banco de dados, executamos o comando abaixo:

mysqldump -uusuario -h xxx.xxx.xxx.xxx -p nomedobanco > nomedobanco.sql

Explicando o comando MySQL

  • mysqldump – é o comando principal, o que vem depois dele são os parâmetros;
  • -uusuario – com o -u estamos dizendo que usaremos autenticação por usuário, e logo em seguida o usuário é o nome do usuário cadastrado no banco de dados com as permissões necessárias para executarmos um dump, substitua-o de acordo com o que você precisar.
  • -h xxx.xxx.xxx.xxx substitua o xxx.xxx.xxx.xxx pelo ip de seu servidor MySQL ou endereço de acesso.
  • -p – Para que seja solicitada a senha do usuário para acessar o banco, é possível também digitá-la logo em seguida do parâmetro sem espaços, assim como foi feito com o usuário, porém encontrei problemas com senhas que tenham espaço, então preferi deste modo onde digito a senha após dar enter;
  • nomedobanco – Substitua este campo pelo nome do banco de dados MySQL que deseja executar o dump;
  • nomedobanco.sql – O nome do arquivo com o dump do banco de dados MySQL a ser gerado em seu computador local.

Para você importar um aquivo .sql para um banco de dados MySQL remoto, o processo é muito parecido, no caso o comando seria:

mysqldump -uusuario -h xxx.xxx.xxx -p nomedobanco < nomedobanco.sql

Notem que a unica diferença foi na parte onde direcionamos a origem ou o destino do arquivo no computador local: < ou >.