有2个错误:
1. 配置中定义的controluser 连接失败
解决
方案:
打开终端:sudo gedit /etc/phpmyadmin/config.inc.php
湾。并取消注释以下行(可能两者都会出现 2 次取决于版本): $cfg['Servers'][$i]['AllowNoPassword'] = TRUE;
C。并注释以下行(可能两者都会出现 2 次取决于版本): //$cfg['Servers'][$i]['controluser'] = $dbuser; //$cfg['Servers'][$i]['controlpass'] = $dbpass;
2. 用户'root'@'localhost'的访问被拒绝
当您打开 phpmyadmin 或在没有 sudo 命令的情况下在终端上打开 mysql(不是来自 root 用户)时,就会出现这种情况。此错误是由于 root 用户造成的。此错误背后的原因是您当前的 ubuntu 用户没有在终端中打开 mysql 的特权。如果您使用 sudo 命令打开 mysql,那么它将打开,但不会从您当前的用户打开。例如:
lenovo@lenovo-ThinkPad-E460:/etc$ mysql -u root -p Enter password: ERROR 1698 (28000): Access denied for user 'root'@'localhost'
这里当前的 ubuntu 用户是 lenovo。所以你必须给你的root用户权限。过程:
1 - 首先,在 sudo mysql 中连接
sudo mysql -u root
2 - 检查您的数据库中存在的帐户
从 mysql.user 中选择用户、主机;
+------------------+----------+
| 用户 | 主持人 |
+------------------+----------+
| 管理员 | 本地主机 |
| debian 系统维护 | 本地主机 |
| magento_user | 本地主机 |
| mysql.sys | 本地主机 |
| 根 | 本地主机 |
3 - 删除当前的 root@localhost 帐户
mysql> DROP USER 'root'@'localhost'; 查询正常,0 行受影响(0,00 秒)
4 - 重新创建您的用户
mysql> CREATE USER 'root'@'%' IDENTIFIED BY ''; 查询正常,0 行受影响(0,00 秒)
5 - 授予您的用户权限,不要忘记刷新权限
mysql> 授予所有权限。TO 'root'@'%'; 查询正常,0 行受影响(0,00 秒)
mysql> 刷新权限;查询正常,0 行受影响(0,01 秒)
6 - 退出 mysql 并尝试在没有 sudo 的情况下重新连接
我希望这将有所帮助。现在您可以在没有密码的情况下打开 phpmyadmin。