I\'ve tried multiple solutions from StackOverflow but haven\'t had any success. I\'m on Mac OSX (Sierra 10.12.3) trying to create a new database and user. From terminal I
If you need to skip the password prompt for some reason, you can input the password in the command (Dangerous)
mysql -u root --password=secret
You must run your mysql by xampp-controle.exe in folder XAMPP. After that login:
mysql -u root
Comment by @Niagaradad helped me. I was entering the wrong password the whole time.
Notice the error message
ERROR 1045 (28000): Access denied for user 'ayaz'@'localhost' (using password: YES)
It says, Password: Yes. That means I am sending the password to SQL and that is wrong.
Usually root account doesn't have password if you haven't set one. If you have installed mysql via homebrew then root account won't have a password.
Here is the comment.
so, not exactly the same then. NO means you are not sending a password to MySQL. YES means you are sending a password to MySQL but the incorrect one. Did you specifically set a password for the mysql root user when you installed MySQL? By default there is no password so you can use mysql -u root -p and hit enter.
Just to confirm: You are sure you are running MySQL 5.7, and not MySQL 5.6 or earlier version. And the plugin column contains "mysql_native_password". (Before MySQL 5.7, the password hash was stored in a column named password. Starting in MySQL 5.7, the password column is removed, and the password has is stored in the authentication_string column.) And you've also verified the contents of authentication string matches the return from PASSWORD('mysecret'). Also, is there a reason we are using DML against the mysql.user table instead of using the SET PASSWORD FOR syntax? – spencer7593
So Basically Just make sure that the Plugin Column contains "mysql_native_password".
Not my work but I read comments and noticed that this was stated as the answer but was not posted as a possible answer yet.
mysql -u root -p;
And mysql will ask for the password
For security reason mysql -u root wont work untill you pass -p in command so try with below way
mysql -u root -p[Enter]
//enter your localhost password