一尘不染

无法使用mysql中创建的用户登录

mysql

使用此命令

GRANT ALL PRIVILEGES ON *.* to 'brian'@'%' identified by 'password';

我尝试登录:

 mysql -u brian -ppassword

错误是:

ERROR 1045 (28000): Access denied for user 'brian'@'localhost' (using password: YES)

我以root用户身份执行此操作,并且确实尝试刷新特权。

我尝试了无数用户,但这似乎行不通。我可以创建没有密码的用户,并且登录有效。命令行和从phpmyadmin

还要检查用户是否在mysql.user中。

布赖恩表演的表演赠款:

| GRANT ALL PRIVILEGES ON *.* TO 'brian'@'%' IDENTIFIED BY PASSWORD '*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19' |

阅读 437

收藏
2020-05-17

共1个答案

一尘不染

您可能会遇到这种永久性的MySQL问题,其中user表中的默认用户之一是'' @ localhost,这localhost最终会在表的后面拒绝所有用户。我会做的是mysqldumpmysql在此项目数据库并查看User表;
如果找到,请删除它并刷新特权。

有关更多详细信息,请参见https://dev.mysql.com/doc/refman/5.5/en/connection-
access.html。

常见的误解是认为,对于给定的用户名,当服务器尝试查找连接的匹配项时,首先使用显式命名该用户的所有行。这不是真的。前面的示例对此进行了说明,其中jeffrey与h1.example.net的连接首先不匹配包含“
jeffrey”作为“用户”列值的行,而是不匹配用户名的行。 结果,即使杰夫里在连接时指定了用户名,他仍被认证为匿名用户。

2020-05-17