忘记mysql的root密码的解决办法

编辑mysql的配置文件/etc/mysql/my.cnf,在[mysqld]段下加入一行“skip-grant-tables”。

忘记mysql的root密码的解决办法

重启mysql服务

1
2
3
[email protected]:~$ sudo service mysql restart
mysql stop/waiting
mysql start/running, process 18669

用空密码进入mysql管理命令行,切换到mysql库。

1
2
3
4
5
Welcome to the MySQL monitor.  Commands end with ; or \g.
 
mysql> use mysql
Database changed

执行update user set password=PASSWORD("new_pass") where user='root'; 把密码重置为new_pass。退出数据库管理。

1
2
3
4
mysql> update user set password=PASSWORD("new_pass") where user='root'; 
Query OK, 0 rows affected (0.00 sec) 
Rows matched: 4  Changed: 0  Warnings: 0 
mysql>quit

回到vim /etc/mysql/my.cnf,把刚才加入的那一行“skip-grant-tables”注释或删除掉。

再次重启mysql服务sudo service mysql restart,使用新的密码登陆,修改成功。

1
2
3
[email protected]:~$ mysql -uroot -pnew_pass
Welcome to the MySQL monitor.  Commands end with ; or \g.
mysql>


转载于:https://my.oschina.net/sskill/blog/191698