Using this command
GRANT ALL PRIVILEGES ON *.* to 'brian'@'%' identified by 'password';
I try to login with:
mysql -u brian -ppassword
The error is:
ERROR 1045 (28000): Access denied for user 'brian'@'localhost' (using password: YES)
I am doing this as root and I did try to flush privileges.
I tried this with countless users but it does not seem to work. I can create a user with no password and login works. Command line and from phpmyadmin
Also check to see if the user was in mysql.user which it is.
Show grants for brian shows:
| GRANT ALL PRIVILEGES ON *.* TO 'brian'@'%' IDENTIFIED BY PASSWORD '*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19' |
The mysql docs have this to say: (from http://dev.mysql.com/doc/refman/5.1/en/adding-users.html):
With this in mind I would recommend you create a
'brian'@'localhost'
user with the same privileges.None of the solutions provided here worked. After loads of error and trial I realised that I had special characters in the password. Changing password without special characters solved the issue
I had a similar problem attempting to connect to a Maria DB running on Ubuntu after upgrading to 17.04.
The default was to listen only on localhost, 127.0.0.1.
To make MySQL/Maria listen on all available ports and interfaces I needed to explicitly specify bind-address=0.0.0.0. I added this line to the end of the file
/etc/mysql/my.cnf
, i.e.Then...
Similar problem occurred for me even after verifying i haven't entered a wrong password, i couldn't login. Below two steps solved my problem.
You can also connect from another host and then the localhost anonymous user is bypassed and you can remove it and flush privileges: