PHP超时连接到Cloud SQL实例

时间:2019-07-04 16:40:15

标签: php mysql google-cloud-platform web-hosting

这是我用于连接数据库的PHP代码,这是MySQL的Cloud SQL实例:

define('DB_SERVER', '192.0.0.1');
define('DB_USERNAME', 'username');
define('DB_PASSWORD', 'password');
define('DB_NAME', 'db');

$db = mysqli_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME) or die(mysqli_connect_error());

很显然,DB_SERVER不是实际的IP地址,也不是凭据,但是我确实输入了一个虚拟的,以查看是否需要添加诸如cloudsql:/jdbc://之类的内容。就像您在Java中一样。

我确实在Cloud SQL上授权了Web服务器的IP地址,但是返回的只是一个Connection Timed Out错误;我该怎么做才能解决此问题?

我确信凭据正确无误,并且可以通过其他授权IP地址进行连接,因为我已经能够通过MySQL工作台从另一个帐户和多个IP地址进行访问。

1 个答案:

答案 0 :(得分:0)

已解决:

对于使用Siteground服务的任何人,如果您使用公共IP授权,请确保添加0.0.0.0/0作为接受的IP地址。然后在刷新php页面时通过在刷新页面后立即运行以下命令来查找连接的IP:

SELECT host FROM information_schema.processlist WHERE ID=connection_id();

它应该为您提供多个IP,并使用IP定位器在线检查它们,以查看它们是否与Siteground服务的位置匹配。删除0.0.0.0/0,然后将该IP地址添加到Google Cloud SQL。