MySQL password recovery

I always forgot the procedure for mysql pw recovery so i'm posting it to my blog.
This is a re-post from DebianAdmin.com.

By default, MySQL Server will be installed with root superuser without any password. You can connect to MySQL server as root without requiring password or by keying in blank password. However, if you have set the password for root and forget or unable to recall the password, then you will need to reset the root password for MySQL.

Login as root to the Unix-like (Unix, Linux or BSD) machine with the MySQL server.

Stop the MySQL server by using either of the following command

#/etc/init.d/mysql stop
Now you need to Start MySQL server without password
# mysqld_safe --skip-grant-tables &
Connect to mysql server using mysql client with the following command
# mysql -u root
Now you should be having mysql prompt
mysql>
Now you need to Setup new MySQL root user password

mysql> use mysql; mysql> update user set password=PASSWORD(“newrootpassword”) where user=’root’; mysql> flush privileges; mysql> quit
Note: Replace newrootpassword with the new root password for MySQL server. Flush Privileges is needed to making the password change effect immediately.

Now you need to Stop MySQL Server using the following command
# /etc/init.d/mysql stop
Test Your New Mysql root password

First you need to start mysql server using the following command
# /etc/init.d/mysql start # mysql -u root -p
Now it will prompt for root password and enter your new root password