Monday, July 2, 2007

Changing Passwords in MySQL

To set the root's password the first time:
$ mysqladmin -u root password NEWPASSWORD
To change the root's password:
$ mysqladmin -u root -p'OLDPASSWORD' password NEWPASSWORD
Or you can use the MySQL Client:
mysql> USE mysql;
mysql> UPDATE user SET PASSWORD=PASSWORD("NEWPASSWORD") WHERE User='root';
mysql> FLUSH PRIVILEGES;
To reset root's password, run mysqld_safe --skip-grant-tables:
$ /etc/init.d/mysqld stop
$ mysqld_safe --skip-grant-tables &
$ mysql -u root
mysql> UPDATE mysql.user SET PASSWORD=PASSWORD("NEWPASSWORD") WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> quit;

# Restart mysqld
$ /etc/init.d/mysqld stop
$ /etc/init.d/mysqld start