当我尝试通过其密码标识的用户'spot'@'localhost'访问数据库时,出现此错误。

PermissionsError: (1045, "Access denied for user 'spot'@'localhost' (using password: YES)", None)


我使用以下两行创建此用户:

create user 'spot'@'localhost' identified by 'fakepasswd';
grant all privileges on *.* to 'spot'@'localhost';


当我在本地运行此代码时,它可以正常工作。当我在另一台机器上运行此代码时,出现上述错误。
但是,当我在两台计算机上运行show grants for 'spot'@'localhost'时,它们都给我相同的输出:

 GRANT ALL PRIVILEGES ON *.* TO 'spot'@'localhost' IDENTIFIED BY PASSWORD '*196BDEDE2AE4FRO4CA44C47D54D78478C7E2BD7B7'


如何调试此访问问题?

最佳答案

您不仅需要从本地主机授予特权,还可以运行以下查询:

这允许用户从ANY ip连接,您可以将%替换为服务器的ip。

关于mysql - 拒绝mysql用户访问,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18756459/

10-09 22:05