DBAtlas · Atlas de operações de banco de dados

1045: Access denied for user (using password: YES/NO)

MySQL

O que significa?

A autenticação falhou para o nome de usuário, a senha ou o host a partir do qual você está se conectando; o login foi rejeitado.

Por que acontece?

Senha errada, o usuário não tem privilégios a partir do host de onde se conecta (user@host), a conta não existe, incompatibilidade de plugin de autenticação (caching_sha2_password vs mysql_native_password) ou credenciais desatualizadas na connection string.

Como resolver

Verifique a correspondência entre usuário e host: SELECT user, host, plugin FROM mysql.user. Conceda privilégios para o host correto (por exemplo, 'app_user'@'%'). Redefina a senha: ALTER USER 'app_user'@'host' IDENTIFIED BY 'new_password'; (ALTER USER/GRANT têm efeito imediato; FLUSH PRIVILEGES só é necessário se as grant tables foram modificadas diretamente com DML). Se você vir 'using password: NO', o cliente não está enviando senha alguma. Para incompatibilidades de plugin, revise o plugin de autenticação: no MySQL 8.4 o plugin mysql_native_password vem desabilitado por padrão (carregado apenas com --mysql-native-password=ON); contas antigas que usam esse plugin e clientes antigos não conseguem conectar. Migre a conta com ALTER USER ... IDENTIFIED WITH caching_sha2_password BY '...'; e atualize o driver do cliente.

Abrir no DBAtlas →

Mais entradas deste banco