【问题标题】:Laravel database connection times out but can connect via mysql commandLaravel 数据库连接超时但可以通过 mysql 命令连接
【发布时间】:2020-11-15 16:54:57
【问题描述】:

我在这里遇到了一个非常奇怪的问题,并且花了很多时间尝试调试。

我的应用程序位于 AWS 环境中。我的登台环境只是一个托管 Laravel 的 EC2 (CentOS 7),数据库托管在 RDS 中。暂存环境运行良好。

然后我克隆了 EC2 和 RDS 用于生产,但由于未知原因,我的 Laravel 一直抱怨与数据库的连接超时。我尝试过的事情:

  1. 既然我可以运行mysql -u<username> -p<password>并成功连接,那么说明安全组和数据库权限都没有问题。
  2. 我还确保.env 文件包含正确的连接信息。
  3. Laravel 还能够列出正确的环境变量。
  4. 最后,我扫描了代码以确保没有硬编码的数据库连接。

我不知道我还错过了什么。

【问题讨论】:

  • 你试过php artisan config:clearphp artisan cache:clear吗?
  • 也检查 cloudwatch 日志,看看是否有太多连接。

标签: php mysql laravel amazon-web-services centos


【解决方案1】:

解决方案非常简单。错过后端实例真是太愚蠢了。解决后,错误就消失了。

【讨论】: