Ele está tentando se conectar usando o nome de usuário "Mikes-MacBook-Air.local" em vez de "myUser". Qual é o comando exato que você está usando para se conectar ao receber a mensagem de erro?
Eu criei um usuário e acesso total ao usuário, mas o MySQL ainda está negando o acesso a esse usuário - por quê?
Criar usuário:
create user 'myUser'@'Mikes-MacBook-Air.local' identified by 'account_password'
Conceda privilégios a todos os bancos de dados:
grant all privileges on *.* to 'myUser'@'Mikes-MacBook-Air.local' identified by 'account_password' with grant option
Subsídio confirmado:
show grants for 'myUser'@'Mikes-MacBook-Air.local'
O MySQL está sendo executado (verificado) em uma máquina com o IP 192.168.0.2 e o cliente é conectado a partir de uma máquina com o IP 192.168.0.3. Eu até criei uma conta de usuário com o ip como domínio:
Criar usuário:
create user 'myUser'@'192.168.0.3' identified by 'account_password'
Conceda privilégios a todos os bancos de dados:
grant all privileges on *.* to 'myUser'@'192.168.0.3' identified by 'account_password' with grant option
Subsídio confirmado:
show grants for 'myUser'@'192.168.0.3'
Eu reiniciei ambas as máquinas e verifiquei que os endereços IP não foram alterados e que o MySQL está sendo executado. Eu posso acessar este servidor MySQL do Workbench sem problema a partir da mesma máquina cliente - credenciais diferentes. Eu também posso acessar esta instância do MySQL de outra máquina cliente remota, onde o usuário tem uma conta MySQL similar com outro domínio de computador.
Depois de tudo isso, ainda recebo a exceção:
Exception: Access denied for user 'myUser'@'Mikes-MacBook-Air.local' (using password: YES)
Por que o MySQL está negando acesso?
Ele está tentando se conectar usando o nome de usuário "Mikes-MacBook-Air.local" em vez de "myUser". Qual é o comando exato que você está usando para se conectar ao receber a mensagem de erro?
você tem o skip-resolv no seu my.cnf? Em caso afirmativo, o MySQL não verificará o ACL com nomes de host.
Em geral, evite usar nomes de host na ACL do MySQL e sempre use IP ou rede. Em seguida, adicione skip-resolv na sua configuração, você terá um melhor desempenho de conexão.
Tags mysql remote-access deny