#1142 - 对表'pma_table_uiprefs'的用户''@ localhost'拒绝SELECT命令

use*_*832 18 mysql phpmyadmin

希望有人可以帮助我,因为我已经查询了网络,没有成功或对此错误的具体答案.我正在使用Windows和Xampp.这是我最近将数据库导入phpmyadmin后得到的错误...

#1142 - SELECT command denied to user ''@'localhost' for table 'pma_table_uiprefs'
Run Code Online (Sandbox Code Playgroud)

导入数据库之后,在phpmyadmin中一切正常,直到我退出然后重新登录,这就是问题所在.当我点击导入数据库中的任何表时,我收到以下错误...

SELECT 'prefs'
FROM 'phpmyadmin'.'pma_table_uiprefs'
WEHRE 'username' = 'root'
AND 'db_name' = 'afdb'
AND 'table_name' = 'role'

#1142 - SELECT command denied to user ''@'localhost' for table 'pma_table_uiprefs'
Run Code Online (Sandbox Code Playgroud)

再次感谢您花时间阅读我的帖子,希望有人可以帮我解决这个错误.

Dhr*_*ruv 89

这肯定会帮助你

1.打开PhpMyAdmin。

2.在 PhpMyAdmin 标志下的左侧,单击第二个图标(空会话数据)。

3.就这样。

在此处输入图片说明

  • 你是一个救星……最简单、最有用的解决方案。 (5认同)
  • 这与得票最高的答案相同。 (3认同)

Mar*_*sle 30

pma_table_uiprefs表包含用户首选项.在phpMyAdmin的config.inc.php中,通过控制用户访问此表(以及配置存储中的其他表).在您的情况下,controluser参数为空,因此查询失败.

对于短期修复,请将config.inc.php中的"//"字符放在此行的开头:

    $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
Run Code Online (Sandbox Code Playgroud)

然后注销并重新登录.

要进行长期修复,请正确设置配置存储,请参阅http://docs.phpmyadmin.net/en/latest/setup.html#phpmyadmin-configuration-storage


jos*_*mmo 14

我偶然发现了这个问题,仅通过注销 phpMyAdmin并再次登录就解决了。

单击此处注销phpMyAdmin


说明

看一下错误消息查询:

SELECT command denied to user ''@'localhost' for table 'pma_table_uiprefs'
Run Code Online (Sandbox Code Playgroud)

发生这种情况是由于MySQL拒绝访问server上的用户“”(空白)localhost。默认设置是阻止来自匿名用户的所有请求。

通过注销,我们迫使phpMyAdmin“忘记”当前用户,并让我们输入MySQL服务器的登录凭据。


小智 13

它说您的用户为空,需要在 上设置用户/phpMyAdmin/config.inc.php

将用户添加到行中

$cfg['Servers'][$i]['controluser'] = 'root';
Run Code Online (Sandbox Code Playgroud)


And*_* F. 9

还有另一种解决方法.

按照http://docs.phpmyadmin.net/en/latest/setup.html#phpmyadmin-configuration-storage中的说明操作:

1.-我选择了xampp\phpMyAdmin\config.inc.php文件并找到以下行:

/* User for advanced features */\\

$cfg['Servers'][$i]['controluser'] = 'pma';

$cfg['Servers'][$i]['controlpass'] = '';
Run Code Online (Sandbox Code Playgroud)

2.-然后我在phpmyadmin中观察到以下表格:

数据库:phpmyadmin

表:pma_bookmark pma_column_info pma_designer_coords pma_history pma_pdf_pages pma_recent pma_relation pma_table_coords pma_table_info pma_table_uiprefs pma_tracking pma_userconfig

3.-我运行这个sql语句:

 GRANT SELECT , INSERT , UPDATE , DELETE ON phpmyadmin.* TO  `pma`@`localhost` IDENTIFIED BY  ''
Run Code Online (Sandbox Code Playgroud)

它奏效了.

  • 我必须注释掉“$cfg['Servers'][$i]['controluser'] = 'pma';”行 和“$cfg['服务器'][$i]['pmadb'] = 'phpmyadmin';” 为了让 phpmyadmin 加载...然后使用您的查询...取消注释掉这些行并刷新...就像一个魅力。 (2认同)

小智 8

只需从 PhpMyAdmin 注销..


小智 5

  1. 从 C:\xampp\phpmyadmin 打开 config.inc.php 文件

  2. 将“//”字符放入 config.inc.php 中以下行的开头:

    $cfg['服务器'][$i]['pmadb'] = 'phpmyadmin';

    示例: // $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';

  3. 在本地主机上重新加载 phpmyadmin。


Man*_*los 5

在 ubuntu 上,尝试 dpkg-reconfigure phpmyadmin 并重新创建 phpmyadmin 数据库。我使用 ansible 安装,但没有完成。