方法1: 用SET PASSWORD命令

mysql -u root

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');


方法2:用mysqladmin

mysqladmin -u root password "newpass"

如果root已经设置过密码,采用如下方法

mysqladmin -u root password oldpass "newpass"


方法3: 用UPDATE直接编辑user表

mysql -u root

mysql> use mysql;

mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';

mysql> FLUSH PRIVILEGES;


方法4:在丢失root密码的时候,可以这样

mysqld_safe --skip-grant-tables&

mysql -u root

mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='root';

mysql> FLUSH PRIVILEGES;


1.用root或者运行mysqld的用户登录系统;

2.利用kill命令结束掉mysqld的进程;

3.使用–skip-grant-tables参数启动MySQL Server

#mysqld_safe –skip-grant-tables &

4.然后用空密码方式使用root用户登录 MySQL;mysql -u root

5.为root@localhost设置新密码

mysql> update mysql.user set password=PASSWORD('新密码') where User='root'

mysql> flush privileges;

mysql> quit

6. 重新启动MySQL