【问题标题】:Error establishing a database connection on Amazon ec2在 Amazon ec2 上建立数据库连接时出错
【发布时间】:2016-09-12 21:47:17
【问题描述】:

所以在过去的几个月里,我已经彻底研究了这个主题和所有其他帖子,但并不是永久的解决方案。

我使用 Putty SSH 在 Amazon EC2 服务器上安装了 Wordpress。我的网站运行良好,直到我投放了为网站 (www.ProfRoofs.com) 带来大量流量的 Facebook 和 Instagram 广告。广告运行几分钟后,主页会显示..

“建立数据库连接时出错”

我在这里尝试了解决方案,包括编辑 wp-config.php 文件以包含那些建议的 FTP 凭据。我阅读了有关创建负载平衡器的信息,但发现效率低下。唯一可行的临时解决方案是重新启动我的实例,但这总是很烦人。

我应该支付亚马逊每月 50 美元的支持来修复它吗?我想知道是不是因为我使用的是免费层 EC2 实例,它太小/内存不够?我读了一篇关于增加内存的帖子,我将内存增加到 3GB,但仍然没有任何效果。

有什么建议吗?努力在这里开展业务。

【问题讨论】:

  • 如果这是一个高流量站点而不是使用本地 MYSQL 使用 MYSQL RDS
  • 您可以在错误时间跟踪您获得了多少流量以及您正在服务多少连接,记下它。看看您是否可以按照 jbird 的建议切换到 RDS+ EC2。您还可以使用 varnish HTTP 加速器来提高性能。

标签: php wordpress amazon-web-services amazon-ec2


【解决方案1】:

您的 EC2 实例没有足够的内存来处理增加的工作负载。我在运行 Wordpress 和本地 MySQL 数据库的 t2.micro 实例中看到了很多。在负载增加之前性能会很好,然后数据库连接错误将开始。

您可以做以下两件事之一:

  1. 您可以使用更大的 EC2 实例。通过 AWS 控制台,只需停止您的实例、更改其实例类型并启动它。我会逐渐增加实例类型以避免支付超出您需要的费用。
  2. 您可以将 MySQL 数据库卸载到 RDS 实例并从 EC2 实例中删除 MySQL。这肯定是有益的,但在流量高峰期您仍然可能需要更大的实例类型。 RDS 可通过 AWS 免费套餐获得。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-11
    • 2016-09-06
    • 2014-02-07
    • 2011-05-17
    • 2016-01-15
    相关资源
    最近更新 更多