mysql,密码正确的情况下报错,ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
关键词 : mysql密码正确的情况下报错,ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) ,远程可以密码可以连接
第一次遇到这么奇怪的问题,我先描述下。
我在自己的电脑上运行了nvaicat远程连接腾讯云上的mysql服务器,然后可以连接上。
用secureCRT连接上服务器,运行 # mysql -u root -p 然后输入密码 正确的密码: "12345678",结果提示失败。
刚开始的时候我以为是连接工具的问题,尝试了很多连接工具,都是这样。之后我也怀疑密码太特殊了?改了新密码,同样也是自己电脑能访问,linux本地访问不到。
回想之前安装的时候,那时候是本地linux能连,但是远程不能连。
当时的解决方案是:
use mysql;
update user set 。。。。 ,把host 改成了 %
用自己电脑上的navicat 查看mysql.user 表。
发现有些问题,localhost那栏 后面的权限都是N。
接下来就是解决方法了:
直接修改名字,我这里是加了temp后缀。然后上linux 重启 # service mysqld restart
再从执行登录操作,输入密码,成功登录。
原理:
出现这种错误的原因我也不知道,百度了都是修改密码解决的。
解决原理的话,我也不清楚,但是我猜测,可能是因为有localhost这个项,没有走 “%” 这项,所以一直没有权限。
如果您有更好的解决方法或者了解出现的原因,请给我留言,谢谢!
作者:MaskFace
来源链接:https://www.cnblogs.com/maskface/p/9324770.html
版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。
2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。