为什么SQL foribben执行SELECT查询?

时间:2015-09-27 16:02:55

标签: mysql sql

我尝试在phpmyadmin中执行查询并获取错误:

#1142 - SELECT command denied to user 'cpses_tkdpmnyjWW'@'localhost' for table 'user'

因此,用户cpses_tkdpmnyjWW'@'localhost是动态创建的,我无法为此用户设置权限。 如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

使用SHOW GRANTS显示您当前的用户权限。听起来好像输出可能类似于:

GRANT USAGE ON *.* TO 'Unnamed'@'localhost'

这意味着该帐户可以登录服务器,但几乎没有其他功能。 This page给出了更详细的细分,因为您会看到有很多排列。

解决方案是您需要找到具有更多权限的帐户或创建/更新一个帐户。

如果以上不是一个选项,我可以尝试的一个快速技巧是连接到'127.0.0.1'而不是'localhost'。在MySQL中,连接源可以构成用户名的一部分,因此如果您使用的是Unix风格的操作系统,那么连接IP而不是套接字是合理的。

此外,如果您具有对服务器的admin / root访问权限,则可以在MySQL启动时创建用户,这在某些情况下非常有用。