数据库突然连接不上;
一、停止MySQL,语句:net stop mysql
二、mysqld --skip-grant-tables启动 MySQL 服务的时候跳过权限表认证,如下图即可
这里注意,一定要是管理员模式
在这里插入图片描述
三、cmd打开新的窗口,输入mysql 回车,在输入use mysql回车,如下图
在这里插入图片描述
四、
1、如果你是忘记密码,则直接修改密码即可;键入命令:update mysql.user set authentication_string=password('123456');
123456是你要修改成的密码;
修改密码后刷新权限:flush privileges;

quit 退出
然后启动数据库:net start mysql;启动数据库前先关闭一开始另一个窗口的命令,直接关掉窗口即可,不然会提示服务无法启动;
再执行 mysql -u root -p 输入密码即可进入;步骤如下图

在这里插入图片描述

2、如果你的密码是正确的,则提示为;using password:YES(本人这次的问题)
在这里插入图片描述
查询登录用户的授权列表 select host, user from user;在这里插入图片描述
我是本地没登陆上,所以我直接执行第二条grant all privileges on *.* to 'root'@'localhost' identified by '123456';;执行后发现报错;百度了一下,发现这条语句改成grant all privileges on *.* to root@'%'identified by 'password';就可以了;
以下截图来自这篇文章:https://blog.csdn.net/qq_36735409/article/details/78032144
在这里插入图片描述
改了之后再查看,发现多了箭头部分
在这里插入图片描述
最后
quit 退出
然后启动数据库:net start mysql;启动数据库前先关闭一开始另一个窗口的命令,直接关掉窗口即可,不然会提示服务无法启动;
再执行 mysql -u root -p 输入密码即可进入成功
在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐