AWS访问来自PHP的VPC中的RDS
问题描述:
我在AWS
上,灯管栈连接到RDS
。
我可以使用SSH
从MySQL Workbench
通过amazons安全组连接到RDS。
但是...现在我需要使用PHP
从外部世界连接,我似乎有一些问题。
通常我会使用SQLI这样连接到RDS:AWS访问来自PHP的VPC中的RDS
$dbName = "mydb.xxxxxxxxxx.us-xxxx-1.rds.amazonaws.com";
$dbTable = "mytable";
$dbUser = "myusername";
$dbPass = "xxxxxxx";
但由于新的实例是在VPC
上RDS
公众开放不可用。
我改变$dbName = 'xx.xxx.xx.xxx:3306'
这是我的EC2实例的公网IP,但我得到一个错误:mysqli_real_connect(): (HY000/2005): Unknown MySQL server host 'xx.xxx.xx.xxx:3306'
我下面this guide但似乎是在连接不成功。
我想我不能正确
Create a second VPC security group (for example, "sg-dbsrv1") and create a new rule by specifying the VPC security group you created in step 1 ("sg-appsrv1") as the source.
任何帮助将是非常赞赏这样的部分,谢谢。
答
在AWS控制台中,您必须将您的IP附加到现有安全组,或使用您的IP创建另一个安全组,然后将该组添加到您的实例。
RDS实例除主机名外无法访问(特别是在运行多可用区时)。
谢谢你的帮助,我已经添加了'All Traffic All All 0.0.0.0/0',但仍然没有运气从PHP,工作台ssh很好 – 2014-09-12 19:42:40
好吧,所以我改变了dbname回到原来的端点,现在有用! – 2014-09-12 19:51:48