一段时间后我删除了XAMPP中的一些函数,并将其与它们混淆了。XAMPP - 对用户''@'localhost'拒绝表'用户'的SELECT命令
我重新安装了它,并用我所有的其他文件移动/重命名了我的文件夹,所以我现在有一个新的空白和新的xampp目录。
但是当我尝试使用任何数据库功能,它给我的错误(或多个)像下面这样:
SELECT command denied to user ''@'localhost' for table 'users'
有什么不对?
谢谢。
一段时间后我删除了XAMPP中的一些函数,并将其与它们混淆了。XAMPP - 对用户''@'localhost'拒绝表'用户'的SELECT命令
我重新安装了它,并用我所有的其他文件移动/重命名了我的文件夹,所以我现在有一个新的空白和新的xampp目录。
但是当我尝试使用任何数据库功能,它给我的错误(或多个)像下面这样:
SELECT command denied to user ''@'localhost' for table 'users'
有什么不对?
谢谢。
用户还没有被赋予读取表的权限。
通过主机的cPanel为数据库创建用户时,可以为用户授予权限。
或者阅读本文档通过mysql命令去做,
你知道为什么在@ -sign之前的用户名是空的吗? – velop
您可以通过启用使用SELECT
GRANT的解决选择ON db.table TO '用户' @'本地主机“;
或
都在db.table为 '用户' @ 'localhost' 的授权;
我刚刚给了访问所添加的用户,使用phpMyAdmin
数据库,它完美的作品:
GRANT SELECT,UPDATE,DELETE,INSERT ON phpmyadmin.* TO [email protected]'localhost' IDENTIFIED BY 'PASSWORD';
对于我来说,用户之前at符号是空是关键辩别解决问题。
我有一个账户''@localhost
(它出现在mysqladmin的<anonymous>@localhost
),mysql登录我而不是我请求的用户。这是因为mysql根据一些逻辑选择你的用户,而不是单独请求用户名。
删除匿名用户修复了问题。
这是我正在寻找的答案。如果您为适用于所有主机的用户(例如myuser @'%')创建帐户,并且localhost('@localhost)存在匿名用户,则在以myuser身份进行本地连接时将使用匿名帐户,而不是myuser @'%'帐户。您需要创建一个单独的myuser @ localhost权限集,或者修改/删除匿名帐户设置。请参阅https://dev.mysql.com/doc/refman/5.7/en/adding-users.html。 – user834770
我对表'pma_table_uiprefs''有一个类似的错误'拒绝用户'@'localhost'的SELECT命令。我通过打开PHPMyAdmin根文件夹中的config.inc.php解决了这个问题,并注释掉了$ cfg ['Servers'] [$ i] ['pmadb'] ='phpmyadmin';' – Tamlyn
以上答案解决我的问题。 – Waqas