自己创建的mysql用户无法使用密码登录,直接用用户名就可以登录的问题

刚创建的用户却无法登录,在简书上找到的解决办法。

http://www.jianshu.com/p/834b0a47fc08

今天在给一台电脑配置XAMPP的时候,在上面的PHPMyAdmin里创建了一个新的用户,并且创建了密码,但是却一直无法使用这个账户登录到MySQL里。

使用PHPMyAdmin的话,会提示登录失败。而直接在命令行登录的话,会提示ERROR 1045 (28000): Access denied for user 'laravel'@'localhost' (using password: YES)。如下图:

使用命令行登录错误

按照网上说的解决方案,我尝试了使用root账户这个laravel账户进行授权,直接把all privileges授权给它,但是还是登录不成功。

最后,经过多次尝试后,我终于发现了问题所在:MySQL中默认存在一个用户名为空的账户,只要在本地,可以不用输入账号密码即可登录到MySQL中。而因为这个账户的存在,导致了使用密码登录无法正确登录。

不用任何账号密码即可在本机登录进MySQL

解决方案:

只要通过root账户登录,然后将该账户删除即可:

mysql -u root # 以root账户登录MySQL

use mysql #选择mysql库

delete from user where User=''; #删除账号为空的行

flush privileges; #刷新权限

exit #退出mysql

现在,就可以使用刚才创建的账户和密码登录了:
————————————————
版权声明:本文为CSDN博主「九十纳魔狼」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_33330762/article/details/113946955