【问题标题】:phpMyAdmin causing failed connectionsphpMyAdmin 导致连接失败
【发布时间】:2014-02-03 06:36:24
【问题描述】:

我在亚马逊 EC2 ubuntu 灯堆栈上运行 phpMyAdmin,配置为使用远程 RDS 服务器。

我已经运行了sudo dpkg-reconfigure phpmyadmin 配置脚本,使用master usernamemaster password(不是rdsadmin,而是在初始化时设置的)访问了RDS,并且可以登录到phpMyAdmin 控制台。

但是,phpMyAdmin 界面的每次刷新都会创建一个新的失败连接。在我看到的日志中:

2014-01-14 23:42:20 12879 [Warning] Access denied for user 
'phpmyadmin'@'[IP address]' (using password: YES)

尝试和调试此问题的最佳方法是什么?

已解决

作为参考,当使用带有RDS的EC2和上面的phpmyadmin安装向导时,控制用户被设置为使用不可解析的主机,例如ip-[EC2 IP ADDRESS].eu-west-1.compute.internal。只需将主机更改为您的实际 EC2 IP 地址即可使连接变为有效,并且不再发生失败的连接。

【问题讨论】:

    标签: php mysql amazon-ec2 phpmyadmin


    【解决方案1】:

    这可能是因为您在 config.inc.php 文件中配置了一个 controluser(将 controluser 命名为“phpmyadmin”),但这实际上不是服务器上的有效用户。如果是这种情况,您可以通过从配置中删除该行或使用提供的脚本创建用户来解决它(通常在“示例”文件夹中,但谁知道它在 Ubuntu 文件系统中的位置)。

    在配置文件上试试grep phpmyadmin config.inc.php,看看有没有什么有趣的发现。

    不过,想一想,通常 Ubuntu 会为您处理这类事情,因此您可能在这里遇到了更大的错误配置。我也会尝试重新配置它(dpkg-reconfigure --plow phpmyadmin),看看你是否可以更进一步。

    phpMyAdmin 中是否显示任何错误或警告消息?

    【讨论】:

    • 是的,我收到了Connection for controluser as defined in your configuration failed.config.inc.php中没有phpmyadmin用户名,但config-db.php中有定义
    • $cfg['Servers'][$i]['controluser'] 和 $cfg['Servers'][$i]['user'] 是有区别的。没有名为“用户名”的字段。只是为了确保我们谈论的是同一件事。此错误与 $cfg['Servers'][$i]['controluser'](以及相应的 $cfg['Servers'][$i]['controlpass'])字段有关。您尝试 dpkg-reconfigure 命令是否成功?
    【解决方案2】:

    您是否将 EC2 ip 地址添加到 RDS 安全组?

    检查这个类似的链接Using PHPMyAdmin to administer Amazon RDS

    谢谢

    【讨论】:

      猜你喜欢
      • 2017-04-29
      • 2021-09-20
      • 1970-01-01
      • 2017-12-04
      • 2019-07-28
      • 2015-01-11
      • 1970-01-01
      • 1970-01-01
      • 2012-12-10
      相关资源
      最近更新 更多