真的迷失了这个。显然这个错误文本可能是一个红色的鲱鱼。希望能得到另一些关注。我是以具有指定权限的用户身份执行此操作的。当我以root身份尝试命令时,一切正常,所以我已将其缩小到权限或用户的问题。
基本上,我在一行上调用DELETE。非常简单的东西。
DELETE FROM hits WHERE id IN(12345) AND userId = 1
导致此错误:
{ [Error: ER_COLUMNACCESS_DENIED_ERROR: SELECT command denied to user 'auctions'@'myhost' for column 'id' in table 'hits']
好的,很奇怪......我知道用户有权限。以下查询返回一组行。
SELECT * FROM hits
首先,用户有SELECT,INSERT,UPDATE,DELETE。现在我刚刚完成了GRANT ALL PRIVILEGES(来自任何主机),但我得到了相同的结果。这是SHOW GRANTS显示的内容
GRANT ALL PRIVILEGES ON `database`.`hits` TO 'auctions'@'%'
然而,我仍然得到同样的错误。按照以前的说法,以root身份运行一切正常。
这是一个调用查询的节点脚本,但我也通过PhpMyAdmin确认了这种行为,所以我认为不应该责备。
我的版本是5.6.19