繁体   English   中英

从php中的spipic ip连接AWS RDS(mysql):超时错误

[英]Connecting AWS RDS(mysql) from spefic ip in php:timed out error

我已成功启动一个AWS RDS实例,且其公共可访问性设置为false

这样我的RDS仅访问来自开发机器和生产服务器的连接

我已将入站规则(localhost ip)添加到当前分配给数据库实例的安全组。

在此处输入图片说明

但是我会得到连接超时错误

$servername = "xxxxx.rds.amazonaws.com:3306";
$username = "x";
$password = "woola";

try {
    $conn = new PDO("mysql:host=$servername;dbname=xxcc", $username, $password);
    // set the PDO error mode to exception
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Connected successfully"; 
    }
catch(PDOException $e)
    {
    echo "Connection failed: " . $e->getMessage();
    }

原因:您不应该尝试使用本地IP

你应该怎么做?

您应该尝试使用公共IP

您可以通过此链接找到您的公共IP。

注意 :

如果您没有静态IP,则您的公共IP可能会更改

编辑您的安全组,然后选择类型:MySQL / Aurora,端口:3306和源,选择custom,如果开发实例是EC2实例,则选择172.31.0.0/16。 如果尝试从工作站访问,请选择“定制”,然后将公共IP / 32放在“源”字段中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM