解决方案是删除匿名(任何)用户!
在其他人设置的服务器上,我也遇到了同样的问题。我通常不会选择在安装mysql时创建匿名用户,所以没有注意到这一点。最初,我以“root”用户身份登录,并创建了几个“普通”用户(也就是只在dbs上有权限、用户名为前缀的用户),然后注销,然后继续验证第一个普通用户。我无法登录。既不通过phpmyadmin,也不通过shell。原来,罪魁祸首就是这个“任意”用户。