Solucionado (ver solução)
Solucionado
(ver solução)
14
respostas

Erro na importaação do banco

Boa tarde,

Quando tento executar o comando para importação:

mysqldump -u root -p root livraria > C:\Users\gabriel\Documents\Alura\Modelagem banco de dados\73065898dc751133a7815c736c2a3eb1-90773f613f17c459aae16e811312649b65432c7a\livraria.sql;

ele me da o seguinte erro:

ERROR:
Unknown command '\D'.
ERROR:
Unknown command '\A'.
ERROR:
Unknown command '\M'.
ERROR:
Unknown command '\7'.
ERROR:
Unknown command '\l'.
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'abriel\Documents\Alura\Modelagem banco de dados\73065898dc751133a7815c736c2a3eb1' at line 1

a única coisa que identifiquei foi as letras que são o começo do nomes da pastas do meu HD.

muito obrigado.

14 respostas

Oi Gabriel.

Tente usa '/' no lugar de '\'.

Giovana o erro mudou pelo jeito ele não mais estranha a barra com o começo da letra no diretório, mas o erro persiste:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mysqldump -u root -p root livraria > C:/Users/Gabriel/Documents/Alura/Modelagem ' at line 1

obrigado

Acho que agora ele está reclamando dos espaços no nome da sua pasta 'Modelagem banco de dados', no linux espaços são representados por '\ ' (barra invertida seguido de espaço). Qual sistema operacional vc está usando?

obs: uma opção seria apenas renomear sua pasta para um nome que não contenha espaços.

Giovana eu renomeie a pasta e nada tbm continua com o mesmo erro anterior, coloquei o arquivo na pasta do bin do MySql e nada tbm.

Coloca aqui o comando todo de como ficou e o erro exato por favor.

claro...

comando: mysqldump - root -p root livraria > livraria.sql; erro: ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mysqldump - root -p root livraria > livraria.sql' at line 1

comando com a senha sem espaços no -p:

mysqldump - root -proot livraria > livraria.sql;

erro:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mysqldump - root -proot livraria > livraria.sql' at line 1

comando com o caminho absoluto:

mysqldump - root -proot livraria > C:/Users/gabriel/Documents/Alura/Modelagembancodedados/73065898dc751133a7815c736c2a3eb1-90773f613f17c459aae16e811312649b65432c7a/livraria.sql;

erro:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mysqldump - root -proot livraria > C:/Users/gabriel/Documents/Alura/Modelagemban' at line 1

os erros são os mesmo mudando a barra ou colocando espaços.

Obs: desculpa esqueci de falar o sistema operacional : Windows 10

obrigado

A senha tem que ser colada no -p, igual você fez nesse comando:

mysqldump - root -proot livraria > C:/Users/gabriel/Documents/Alura/Modelagembancodedados/73065898dc751133a7815c736c2a3eb1-90773f613f17c459aae16e811312649b65432c7a/livraria.sql;

O único problema foi que você esqueceu o -u nele. Tenta esse aqui:

mysqldump -u root -proot livraria > C:/Users/gabriel/Documents/Alura/Modelagembancodedados/73065898dc751133a7815c736c2a3eb1-90773f613f17c459aae16e811312649b65432c7a/livraria.sql;

Verdade Giovana mas mesmo assim continua com o mesmo erro

comando:

mysqldump -u root -proot livraria > C:/Users/gabriel/Documents/Alura/Modelagembancodedados/73065898dc751133a7815c736c2a3eb1-90773f613f17c459aae16e811312649b65432c7a/livraria.sql;

erro:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mysqldump -u root -proot livraria > C:/Users/gabriel/Documents/Alura/Modelagemba' at line 1

Oi Gabriel.

Me parece que você está chamando esse comando de dentro do banco (por isso ele dá erro de sintaxe do SQL. Para funcionar você tem que sair (usando o comando quit) e rodar ele de fora.

Giovana eu configurei a variavel de ambiente pro MySql executando o camando o erro mudou agora

comando:

mysqldump -u root -proot livraria > C:/Users/gabriel/Documents/Alura/Modelagembancodedados/73065898dc751133a7815c736c2a3eb1-90773f613f17c459aae16e811312649b65432c7a/livraria.sql;

erro:

Couldn't find table: ";"

obrigado

Como não é comando você tem que tirar esse ; do final da linha.

Giovana ta meio dificil kkk,

eu executei o comando sem o ;

mysqldump -u root -proot livraria > C:/Users/gabriel/Documents/Alura/Modelagembancodedados/73065898dc751133a7815c736c2a3eb1-90773f613f17c459aae16e811312649b65432c7a/livraria.sql

ele da o warning:

mysql: [Warning] Using a password on the command line interface can be insecure.

mas nao importa nada

se eu coloco o comando sem a senha ele me pede, mas nao da erro nenhum nada, e tbm nao importa

solução!

A sim. Mensagens do tipo [warning] tem o objetivo apenas de alertar sobre riscos que você pode correr (sem impedir as ações do comando que você usou). No caso, ele está te alertando que usar a senha pela linha de comando pode ser inseguro, mas você tem consciencia disso, então basta ignorar. Se você for na pasta que definiu vai ver que o seu dump estará lá, sem erros. Faz sentido?

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software