How To Change MySQL Root Password

by Ramesh Natarajan on July 17, 2009

Question: How do I change MySQL root Password?

Answer: You can change MySQL root password using one of the following 3 methods.

These methods can be used on both Windows and Unix Environment including Ubuntu, Debian, CentOS, Fedora, RedHat, Arch Linux, SUSE etc.,

Method 1. How to Change MySQL Root Password Using mysqladmin Command?

You can change the mySQL root password using mysqladmin command as shown below. Please note that there is no space between -p and currentpassword.

# mysqladmin -u root -pcurrentpassword password 'newpassword'

Once you’ve changed it make sure you can login with your new password successfully as shown below.

# mysql -u root -pnewpassword
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 5.1.25-rc-community MySQL Community Server (GPL)
mysql>

Method 2. How to Change MySQL Root Password From MySQL Prompt Using UPDATE SQL Command?

You can also use the standard update SQL command combined with the MySQL password function to change the password as shown below.

Login to MySQL root account using old password

# mysql -u root -poldpassword
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 5.1.25-rc-community MySQL Community Server (GPL)
mysql>

Use the UPDATE Command to change root password.

mysql> UPDATE user SET password=PASSWORD('newpassword') WHERE user='root';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

Verify the new MySQL root password

Once you’ve changed it make sure you can login with your new password successfully as shown below.

# mysql -u root -pnewpassword
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 5.1.25-rc-community MySQL Community Server (GPL)
mysql>

Method 3. How to Set MySQL Root Password Using mysqladmin Command?

This method works only if there is no password currently assigned for the root account. If you don’t have any password assigned to the root account, set the password without giving current password as shown below.

# mysqladmin -u root password 'newpassword'
[Note: There is no currentpassword for root in this example]

How to Change MySQL Regular User (non-root) Password Using mysqladmin Command?

You can use the same mysqladmin command to change password for a mySQL end-user account as shown below.

# mysqladmin -u jsmith -pcurrentpassword password 'newpassword'

How to Change MySQL Regular User (non-root) Password From MySQL Prompt Using UPDATE SQL Command?

You can also use the standard update SQL command combined with the MySQL password function to change the password of a non-root user as shown below.

mysql> UPDATE user SET password=PASSWORD('newpassword') WHERE user='ramesh';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
Download Free eBook - Linux 101 Hacks

Get free Unix tutorials, tips and tricks straight to your email in-box.

If you enjoyed this article, you might also like..

  1. Forgot MySQL Root Password – How To Reset It?
  2. 15 Practical Usages of Mysqladmin Command For Administering MySQL Server
  3. Howto Install MySQL on Linux
  4. Ubuntu Tips: How To Enable Root User ( Super User ) in Ubuntu
  5. How To Change Password On Ubuntu
  

Vim 101 Hacks Book

{ 2 trackbacks }

Destillat KW29-2009 | duetsch.info - GNU/Linux, Open Source, Softwareentwicklung, Selbstmanagement, Vim ...
July 17, 2009 at 7:32 am
Centralised Syslog Daemon « My little sandbox
February 6, 2010 at 10:31 am

{ 2 comments… read them below or add one }

1 Andrey July 17, 2009 at 8:04 am

What if you do not know the current password? Create a fresh MySql installation. Create some database. Copy everything from the mysql directory of the problem database to the directory of the new database. Change everything as needed and copy back to the mysql directory. And do not forget to stop the servers before copying files.

2 Ramesh Natarajan July 20, 2009 at 12:31 am

@Andrey,

Thanks for the suggestion on what to do if someone do not know the current password. There is a better way to rest the forgotten root password on MySQL, which will be posted in the next article this Wed.

Leave a Comment

Previous post:

Next post: