从 php:timed 中的特定 ip 连接 AWS RDS(mysql) 出错误
Connecting AWS RDS(mysql) from spefic ip in php:timed out error
我成功启动了一个 AWS RDS 实例,public 可访问性设置为 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
你应该做什么?
你应该试试你的 public ip
你可以通过这个linkFind My IP by Google
找到你的publicip
注:
如果您没有静态 ip
,您的 public ip 可能会改变
编辑您的安全组并 select 输入:MySQL/Aurora、端口:3306 和源 select 自定义,如果您的开发实例是 EC2 实例,则选择 172.31.0.0/16。如果您尝试从您的工作站访问,请选择自定义并将您的 public ip/32 放在源字段中。
我成功启动了一个 AWS RDS 实例,public 可访问性设置为 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
你应该做什么?
你应该试试你的 public ip
你可以通过这个linkFind My IP by Google
找到你的publicip注:
如果您没有静态 ip
,您的 public ip 可能会改变编辑您的安全组并 select 输入:MySQL/Aurora、端口:3306 和源 select 自定义,如果您的开发实例是 EC2 实例,则选择 172.31.0.0/16。如果您尝试从您的工作站访问,请选择自定义并将您的 public ip/32 放在源字段中。