I'm trying to set the password of the user root but I'm gettin the error below, any idea?
+----------------------------------------------------------------------------------------------------------------------------------------+
| Grants for root@localhost |
+----------------------------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*436576511F70A4E3B305E1AB8E209851945D8687' WITH GRANT OPTION |
+----------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> exit
Bye
root@tirengarfio:/var/www/rs2# mysqladmin -u root password foo,
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
This is basically a more detailed version of a previous answer.
In your Terminal, go to the location of your utility program, mysqladmin
For example, if you were doing local development and using an application like M/W/XAMP, you might go to the directory:
/Applications/MAMP/Library/bin
This is where mysqladmin resides.
If you're not using an application like MAMP, you may also be able to find your local installation of mysql at: /usr/local/mysql
And then if you go to: /usr/local/mysql/bin/
You are in the directory where mysqladmin resides.
Then, to change the password, you will do the following:
At your Terminal prompt enter the exact command below (aka copy and paste) and press enter. The word "password" is part of the command, so don't be confused and come to the conclusion that you need to replace this word with some password you created previously or want to use in the future. You will have a chance to enter a new password soon enough, but it's not in this first command that you will do that:
./mysqladmin -u root -p password
The Terminal will ask you to enter your original or initial password, not a new one yet. From the above image you provided, it looks like you have one already created, so enter it here:
Enter password:
oldpasswordNew password:
newpasswordConfirm new password:
newpasswordReset or restart your Terminal.
In some cases, as with M/W/XAMP, you will have to update this new password in various files in order to get your application running properly again.
Those are all good answers, but don't quite touch the deep cause of the problem one most likely has if faced with the OP question. That is, not knowing the ORIGINAL "starting" password created during the installation time.
And all these command lines with "-u root ..." etc. imply knowing and using THAT password.
Now this part from the original installation message may help anyone facing the problem above:
Initial password for first time use of MySQL is saved in $HOME/.mysql_secret
ie. when you want to use "mysql -u root -p" first you should see password
in /root/.mysql_secret
Set/Change password:
Login to MySQL console:
To exit the console:
my.cnf
using following pathunder #
The following options will be passed to all MySQL clients#password
remove#
comment sign if it is therepassword = "newpassword"
save file
close file
re-start mysql
password
is to be typed literally. It's a command. You don't have to substitutepassword
with your actual password.