忘记root密码报错Can't connect to MySQL server on 'localhost'解决办法

 忘记密码的原因有很多,下面说一下如何恢复

①在mysql安装目录的bin文件夹下找到my.ini文件

②ctrl+f 找到[mysqld] 在下面加上skip-grant-tables 即跳过表授权 保存

③打开cmd命令行工具 输入mysql -u 用户名 如 mysql -u root 由于配置了2此时是免密码登录的,直接回车就可以使用数据库了

④接下来修改(设置)用户root的密码,输入 use mysql 其中mysql是数据库名 它是MySQL自带的数据库,正常会提示 database changed

⑤ 输入 update user set password = password('你自己要设置的新密码') where user = 'root'(要加引号,这里我的用户是root,注意你自己的用户名) and host ='localhost';   主机当然是本机 本条语句执行成功会提示query ok

因为user是数据库mysql(注意大小写)的一张表,所以我们可以修改这个表中的记录

⑥输入 flush privileges;刷新权限,正常会提示query OK

⑦ 去掉②中我们添加的跳过表权限的语句(即去掉[mysqld]下的skip-grant-tables),保存

⑧重启mysql服务 我的系统是windows 输入 net stop mysql,然后再 net start mysql

经过以上八个步骤,已经恢复正常了

猜你喜欢

转载自blog.csdn.net/es_baoly/article/details/87211995