Search code examples
mysqlmysql-error-1045

How to allow user to login to MySQL?


As a root mysql user, I executed the following:

grant all on mydb.* to john identified by 'john1';

Then from shell, I tried to login via

mysql -h localhost -u john -pjohn1;

But when I do this, I get the error

ERROR 1045 (28000): Access denied for user 'john'@'localhost' (using password: YES)

How do I allow john to login to the mysql terminal? Do I need to use the root mysql user to change something in the mysql.user table?

Thanks


Solution

  • Try

    GRANT ALL PRIVILEGES on mydb.* to 'john'@'localhost' identified by 'john1';
    

    Or maybe the problem is because you're not specifying the schema. Add "mydb" to the end of your login console command:

    mysql -h localhost -u john -pjohn1 mydb
    

    Docs: http://dev.mysql.com/doc/refman/5.1/en/adding-users.html