![](/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.