2

我有两台服务器:Web 和 MySQL,都在 Ubuntu 12.04 x64 上

在 Web 上设置 phpmyadmin 安装和 nginx 等。在 MySQL 上设置 mysqsl 安装

当我从 Web 运行 mysql --user=user --host=MySQL.hostname --password 时,我可以很好地连接到 MySQL 服务器

但是当我尝试通过 phpmyadmin 连接时,它不起作用。为什么?

用户不是root

在 /usr/share/phpmyadmin/config.inc.php 文件(我从示例中复制)中,我有这个:

/*
 * First server
 */
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'MySQL.hostname';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
/* Select mysql if your server does not have mysqli */
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['AllowNoPassword'] = false;

在 MySQL 服务器上,我将其设置为绑定到 0.0.0.0,并且我在 'localhost' 和 '%' 上拥有该用户的用户权限(请记住 - 我确实通过 mysql 客户端连接得很好)

(注意: MySQL.hostname 实际上是一个可解析的主机名,这里仅使用这个示例)

4

3 回答 3

4

好的答案很简单,即使主要文件位于 /usr/share/phpmyadmin 中,配置实际上加载在 /etc/phpmyadmin/ 中

改变 config.inc.php 有诀窍:)

于 2013-11-12T17:53:36.280 回答
1

由于这个主题是第一个搜索结果之一,我的发现可以帮助其他人。

我有同样的症状:使用 #mysql -u root -p login 可以从命令行登录失败,通过 phpmyadmin 没有显示错误。

对我来说,安装 ntp 和同步时间后问题就消失了

于 2017-03-03T11:54:09.217 回答
0

我遇到了同样的问题。我检查了 Web 服务器 [Apache] 的错误日志,发现服务器已满。即使写入 access.log 文件也没有空间。这是我在日志文件中看到的内容 设备上没有剩余空间:[client xx.xx.xx.xx:xxxx] AH00646: Error writing to /var/log/apache2/access.log, referer: https://服务器/地址/phpmyadmin/ 我释放了一些空间并开始工作。

于 2017-11-27T10:58:36.467 回答