Exportando e importando dados do mySQL por linha de comando

A motivação que me fez criar esse post partiu de um dos itens de um teste que bolamos aqui na empresa para uma vaga de SysAdmin Linux. A partir do momento em que alguns candidatos a vaga encontravam alguma dificuldade para restaurar um dump do mySQL por linha de comando (sendo não ser obrigatório por linha de comando).

Nesta página temos as sessões:

  1. Basicamente fazendo o dump do mySQL
  2. Restaurando um banco mySQL
  3. Atenção as setas!
1 - Basicamente fazendo o dump

shell~# mysqldump -u usuario -p meubancodedados -h localhost

Parâmetros:

  • -u  usuario nome de usuário com permissão no banco
  • -p = pedir senha
  • -h localhost = ip ou dominio onde se encontra o seu banco mySQL
  • meubancodedados = nome do banco de dados que você quer dar o dump

Se tudo sair conforme esperado o mysqldump vai cuspir todo o conteudo do banco de dados, e se quiser colocar esse conteúdo dentro de um arquivo basta adicionar o "> meu_dump.sql" do final da instrução.

 shell~# mysqldump -u usuario -p bancodedados -h localhost > meu_dump.sql

2 - Restaurando um banco mySQL
Um pouco de atenção agora pois é nessa parte em que muitos se enganam. No momento em que fazemos um dump de um banco usamos o mysqldump e quando queremos restaurar esse dump usamos o ....... ? mysql !
Muitas das pessoas que fizeram testes para o cargo citado a cima utilizaram o mysqldump para importar os dados, e encontraram muitas referencias da utilização do mesmo para restaurar. Mas não funciona, pelo menos não na versão do mySQL 5 que usamos. :)
Segue abaixo a linha para restaurar o banco:

 shell~# mysql -u usuario -p bancodedados_2 -h localhost < meu_dump.sql

Vale lembrar que é necessário que você crie o bancodedados_2, dê as devidas permissões para o usuario antes de executar essa instrução.

3 - Atenção as setas!

Quando é feito o mysqldump e queremos salvar as informações em um arquivo de texto utilizamos o sinal de maior ">", já quando queremos importar os dados para o mySQL utilizando o mysql usamos a seta inversa ou senha o sinal de menor "<".

 

Abraços.

2 ideias sobre “Exportando e importando dados do mySQL por linha de comando

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *