O melhor lugar para você aprender Javascript.

Descubra como é simples dominar o desenvolvimento Full Stack.

Como resolver o erro Client does not support authentication protocol requested by server no MySQL.

Como resolver o erro Client does not support authentication protocol requested by server no MySQL.

Você já se deparou com esse erro antes? Teve dificuldades em resolve-lo?

Vejo abaixo como resolver esse problema de forma definitiva.

Origem do erro

Isso acontece devido à uma mudança no padrão do hash de senha de usuários no MySQL.

Essa mudança ocorreu na versão 4.1 do MySQL.

Com resolver esse problema

A solução ideal é que você faça o upgrade dos seus clients para a versão mais recentes.

Caso isso não senha possível, você pode mudar o tipo de hash da senha do seu usuário para o padrão antigo.

Para isso, basta rodar o comando abaixo:

ALTER USER root IDENTIFIED WITH mysql_native_password BY 'suaSenha';

Lembre-se de definir a senha desejada, podendo também deixar o valor vazio, caso não queira que o usuário possua uma senha.

Resolução do problema utilizando Docker

Para resolver esse problema utilizando docker, você precisa acessar o bash do seu container. Para isso, rode os comandos abaixo:

docker exec -it <seu_container> bash

Dentro do seu container, faça login no mysql, através do comando abaixo:

mysql -u root -p

Após isso, será necessário digitar a senha do usuário root.

Em seguida, altere o padrão do hash de senha de usuários do mysql, através do comando abaixo:

ALTER USER root IDENTIFIED WITH mysql_native_password BY 'suaSenha';

Pronto! Nesse momento você já deve parar de ver o erro.

Forte abraço,

Carlos Levir

Entre para nossa lista e receba conteúdos exclusivos e com prioridade

Sobre o Autor

Carlos Levir
Carlos Levir

Desenvolvedor fascinado por aprendizado e pelo ecossistema Javascript. Sempre em busca do próximo nível. Atualmente atua como Engenheiro de Software na Rocketseat.

0 Comentários

Deixe uma resposta

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