我试图评论一下
$cfg['Servers'][$i]['controluser'] = $dbuser;
$cfg['Servers'][$i]['controlpass'] = $dbpass;
我的文件中有这两行config.inc.php
。
我取消了以下几行的注释:
$cfg['Servers'][$i]['controlhost'] = '127.0.0.1';
$cfg['Servers'][$i]['controlport'] = '80';
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = 'pmapass';
并输入 127.0.0.1 和端口 80。
当我安装 mysql 时,我mysql_secure_installation
设置了一个具有所有权限的 root 用户(我可以通过命令行登录到该用户)。所以这应该不是问题,对吧?
我真的不知道该如何排除故障。我查看了所有其他有相同问题的链接,但都无济于事。
答案1
所以我设法解决了它。我不太清楚是什么导致了错误。但我注意到我也无法通过终端登录 mysql。我得到了一个#1698 - Access denied for user 'root'@'localhost'
错误。所以我所做的就是创建一个新用户
create user 'phpmyadmin'@'localhost' identified by 'mypass';
但这给了我错误:ERROR 1396 (HY000): Operation CREATE USER failed for 'phpmyadmin'@'localhost'
所以我找到了一个帖子,上面说我们应该“假设”这个用户已经存在。所以我做的是:
mysql> drop user 'phpmyadmin'@'localhost';
Query OK, 0 rows affected (0,00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0,00 sec)
mysql> create user 'phpmyadmin'@'localhost' identified by 'mypass';
Query OK, 0 rows affected (0,00 sec)
mysql> grant all privileges on *.* to 'phpmyadmin'@'localhost' with grant option;
Query OK, 0 rows affected (0,00 sec)
mysql> flush privileges;
之后我就可以用该用户登录 phpmyadmin 了。