我正在尝试从ec2实例连接到数据库。它在我的本地开发机器上工作正常。虽然在我的ec2实例上使用相同的凭据但它会抛出此错误。如何使用CodeIgniter 3来提升超时连接?:
A PHP Error was encountered
Severity: Warning
Message: mysqli::real_connect(): (HY000/2002): Connection timed out
Filename: mysqli/mysqli_driver.php
Line Number: 161
Backtrace:
File: /opt/workspace/api.my_app.com/index.php
Line: 292
Function: require_once
Unable to connect to your database server using the provided settings.
Filename: core/CodeIgniter.php
Line Number: 500
答案 0 :(得分:1)
以下是我要检查的地方:
IN流量的EC2安全组规则 - 您的EC2实例的IP地址可能不被允许,而您的本地开发IP地址是。如果您正在使用RDS,这尤其可行 - 确保端口3306对来自EC2的IP地址的RDS上的IN流量开放。
如果MySQL直接安装在EC2服务器上(对于大流量用例,我不建议这样做!),请检查application / config / database.php中的设置,以确保“<重新使用正确的凭据。在这种情况下,有点像DB HOST配置错误 - 如果IP地址错误,它会在连接上超时。