acesso mysql negado para novo usuário

0

Pergunta extremamente básica, mas estou puxando o cabelo para fora tentando descobrir isso:

mysql> create database hellodb;
Query OK, 1 row affected (0.00 sec)

mysql> grant all privileges on hellodb to hellouser identified by '123';
Query OK, 0 rows affected (0.00 sec)

mat@admin:~$ mysql -u hellouser hellodb -p
Enter password: 
ERROR 1045 (28000): Access denied for user 'hellouser'@'localhost' (using password: YES)

Esta é uma instância do Amazon EC2, portanto há complicações. Há um endereço IP interno e um endereço IP externo, e o MySQL só pode ser configurado para escutar em um deles. Eu escolhi o endereço IP externo. Mas eu não acho que isso importe: os comandos acima devem funcionar, e eu tentei todas as variantes do endereço do host que eu posso imaginar (localhost, ip interno, ip externo, fqdn,%).

Este é o Ubuntu Trusty, então as coisas normalmente funcionam (em oposição ao Debian e sua estratégia de design "quebrado por padrão para sua paz de espírito").

Existe alguma maneira de depurar essas mensagens de erro "Acesso negado"? Existe uma maneira de depurar se o MySQL está insatisfeito com a senha, ou o endereço IP, ou o nome do usuário, ou os privilégios?

Existem inúmeras combinações possíveis que podem causar esse problema, e o googling mostra uma grande confusão sobre isso. Se houvesse alguma maneira de separar a causa real que seria realmente útil.

    
por Matthew Exon 16.02.2017 / 10:29

1 resposta

1

Em vez desta afirmação

grant all privileges on hellodb to hellouser identified by '123';

Tente este abaixo - >

grant all privileges on hellodb.* to 'hellouser'@'localhost' identified by '123';
    
por 16.02.2017 / 11:36