![](/img/trans.png)
[英]How to do I connect to a SQL Server instance from PHP 7 on an AWS Amazon Linux EC2 instance?
[英]How do I do MySQL queries on an RDS instance from an EC2 instance?
我一直在尝试建立一个系统,其中我的数据库位于AWS RDS实例中,而我的程序位于EC2实例中(看似非常简单)
由于某种原因,遵循此处的结果一直没有帮助。
为了澄清,我正在寻找的是一些示例代码,用于连接到数据库并运行mysql查询。 到目前为止,尽管指定了rds URL,但我的每次尝试都以我的程序尝试与我的ec2实例上的localhost mysql连接而结束。
这是我的剧本,
<?php
$servername = "maindb.gibberish.us-east-1.rds.amazonaws.com";
$username = "username";
$password = "password";
// Create connection
$conn = mysqli_connect($servername, $username, $password);
// Check connection
if (mysqli_error($conn)) {
die("Connection failed: " . mysqli_error($conn));
}else{
echo "connected successfully";
}
?>
您可以在我对这个问题的回答中使用代码,该代码还解释了每一行代码的作用。 您可以在$servername
变量中键入Amazon RDS 端点 。 并在$sql
变量中更改查询。
在确保EC2服务器可以联系RDS方面。 您需要确保安全组已正确设置为允许来自服务器的连接。 像这样:
2.选择RDS服务器的安全组 。 nb如果您在设置时没有命名此特定名称,则该名称很可能类似于rds-launch-wizard created xxxxxxx
。
单击编辑按钮。 其中的IP地址很可能就是您正在使用的IP地址。 (或您在设置服务器时使用的服务器)。 您需要将此更改为ANY,或者仅更改为EC2服务器的公共IP地址。
编辑:查看您的代码后,我认为您正在错误地测试连接。
<?php
$servername = "maindb.gibberish.us-east-1.rds.amazonaws.com";
$username = "username";
$password = "password";
// Create connection
$conn = mysqli_connect($servername, $username, $password);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_error($conn));
}else{
echo "connected successfully";
}
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.