

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 於預設 VPC 內啟動並連線至外部 Amazon RDS 執行個體
<a name="rds-external-defaultvpc"></a>

下列程序說明將外部 Amazon RDS 執行個體連線至[預設 VPC](https://docs.aws.amazon.com/vpc/latest/userguide/default-vpc.html) 的程序。若您使用自訂 VPC，程序亦相同。唯一的額外要求是，您的環境和資料庫執行個體必須位於相同的子網路，或位於能夠互相通訊的不同子網路。如需設定自訂 VPC 以搭配使用 Elastic Beanstalk 的詳細資訊，請參閱 [搭配 Amazon VPC 使用 Elastic Beanstalk](vpc.md)。

**注意**  
啟動新資料庫執行個體的替代方法是從先前由 Elastic Beanstalk 建立且隨後從 Beanstalk 環境[分離](using-features.managing.db.md#using-features.decoupling.db)的資料庫開始。如需詳細資訊，請參閱[將資料庫新增至您的 Elastic Beanstalk 環境](using-features.managing.db.md)。使用此選項，您就不需要完成啟動新資料庫的程序。不過，您確實需要完成在本主題中所描述的後續程序。
如果您是從 Elastic Beanstalk 建立，並隨後從 Beanstalk 環境解耦的資料庫開始，則可以略過第一組步驟，並以*修改 RDS 執行個體安全群組的傳入規則*下分組的步驟繼續進行。
 如果您計劃為生產環境使用解耦的資料庫，請確認該資料庫使用的儲存類型是否適合您的工作負載。如需詳細資訊，請參閱《Amazon RDS 使用者指南》**中的[資料庫執行個體儲存體](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html)和[修改資料庫執行個體](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.DBInstance.Modifying.html)。

**欲在預設 VPC 中啟動 RDS 資料庫執行個體**

1. 開啟 [RDS 主控台](https://console.aws.amazon.com/rds/home)。

1. 在導覽窗格中，選擇 **Databases** (資料庫)。

1. 選擇 **Create database** (建立資料庫)。

1. 選擇 **Standard Create (標準建立)**。
**重要**  
請勿選擇 **Easy Create (輕鬆建立)**。如果您選擇該選項，則您無法設定必要的設定來啟動此 RDS 資料庫。

1. 在 **Additional configuration (其他設定)** 下方的 **Initial database name (初始資料庫名稱)** 中輸入 **ebdb**。

1. 檢閱預設設定，並根據您的特定要求來調整這些設定。請注意以下選項：
   + **資料庫執行個體類別** – 選擇具有適當數量的記憶體和 CPU 功率之適合您工作負載的執行個體大小。
   + **異地同步備份部署** – 若要達到高可用性，請將此項設定為**在不同的 AZ 中建立 Aurora 複本/讀取器節點**。
   + **主要使用者名稱**和**主要密碼** – 資料庫使用者名稱和密碼。記下這些設定，以供稍後使用。

1. 檢查其餘選項的預設設定，然後選擇 **Create database (建立資料庫)**。

接著，修改連接至資料庫執行個體的安全群組，以允許適當連接埠的傳入流量。此安全群組與您稍後將連接至 Elastic Beanstalk 環境的安全群組相同。因此，您新增的規則會將傳入存取許可授予在相同安全群組內的其他資源。

**修改連接至 RDS 執行個體的安全群組的傳入規則**

1. 開啟 [Amazon RDS 主控台](https://console.aws.amazon.com/rds/home)。

1. 選擇 **Databases** (資料庫)。

1. 選擇您的資料庫執行個體名稱以檢視其詳細資料。

1. 在 **Connectivity** (連線) 區段中，記下顯示於此頁面的 **Subnets** (子網路)、**Security groups** (安全群組) 和 **Endpoint** (端點)。這樣您稍後便可使用這些資訊。

1. 在 **Security** (安全性) 下，可查看與資料庫執行個體相關聯的安全群組。開啟連結以檢視 Amazon EC2 主控台內的安全群組。

1. 在安全群組的詳細資訊中，選擇 **Inbound (傳入)**。

1. 選擇**編輯**。

1. 選擇 **Add Rule** (新增規則)。

1. 針對 **Type (類型)**，選擇您的應用程式所使用的資料庫引擎。

1. 對於 **Source (來源)**，輸入 **sg-** 檢視可用的安全群組清單。選擇與 Elastic Beanstalk 環境中使用之 Auto Scaling 群組相關聯的安全群組。以便環境中的 Amazon EC2 執行個體可以存取資料庫。  
![在 Amazon EC2 主控台中編輯安全群組傳入規則的螢幕影像。](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/images/ec2-securitygroup-rds.png)

1. 選擇**儲存**。

接著，請將資料庫執行個體的安全群組新增至執行環境。在此程序中，Elastic Beanstalk 會重新佈建環境中所有已連接額外安全群組的執行個體。

**欲將安全群組新增至您的環境**
+ 執行以下任意一項：
  + 使用 Elastic Beanstalk 主控台新增安全群組

    1. 開啟 [Elastic Beanstalk 主控台](https://console.aws.amazon.com/elasticbeanstalk)，然後在**區域**清單中選取您的 AWS 區域。

    1. 在導覽窗格中，選擇**環境**，然後在清單中選擇您環境的名稱。

    1. 在導覽窗格中，選擇 **Configuration (組態)**。

    1. 在 **Instances (執行個體)** 組態類別中，選擇 **Edit (編輯)**。

    1. 在 **EC2 安全群組**下，除了 Elastic Beanstalk 建立的執行個體安全群組，請選擇要連接到執行個體的安全群組。

    1. 若要儲存變更，請選擇頁面底部的**儲存變更**。

    1. 閱讀警告的內容，然後選擇 **Confirm (確認)**。
  + 若要使用[組態檔案](ebextensions.md)新增安全群組，請使用 [https://github.com/awsdocs/elastic-beanstalk-samples/tree/main/configuration-files/aws-provided/security-configuration/securitygroup-addexisting.config](https://github.com/awsdocs/elastic-beanstalk-samples/tree/main/configuration-files/aws-provided/security-configuration/securitygroup-addexisting.config) 範例檔案。

接著，使用環境屬性，將連線資訊傳送至環境。在您透過 Elastic Beanstalk 主控台[將資料庫執行個體新增到環境](using-features.managing.db.md)時，Elastic Beanstalk 會使用諸如 **RDS\_HOSTNAME** 等環境屬性，將連線資訊傳遞至您的應用程式。您可以使用相同的屬性。藉此，您可以為整合資料庫執行個體和外部資料庫執行個體使用相同的應用程式程式碼。或者，您也可以選擇自己的屬性名稱。

**設定 Amazon RDS 資料庫執行個體的環境屬性**

1. 開啟 [Elastic Beanstalk 主控台](https://console.aws.amazon.com/elasticbeanstalk)，然後在**區域**清單中選取您的 AWS 區域。

1. 在導覽窗格中，選擇**環境**，然後在清單中選擇您環境的名稱。

1. 在導覽窗格中，選擇**組態**。

1. 在**更新、監控和日誌記錄**組態類別中，選擇**編輯**。

1. 在 **Environment Properties (環境屬性)** 區段，定義應用程式建立連線字串所讀取的變數。為了與具備整合式 RDS 資料庫執行個體的環境相容，請使用下列名稱與值。您可以在 [RDS 主控台](https://console.aws.amazon.com/rds/home)中找到除了密碼以外的所有值。    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/rds-external-defaultvpc.html)  
![新增了 RDS 屬性的環境屬性組態區段](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/images/environment-cfg-envprops-rds.png)

1. 若要儲存變更，請選擇頁面底部的**儲存變更**。

若您尚未將應用程式設計為讀取環境屬性並建構連線字串，請參閱下列語言特定的主題以取得說明：
+ Java SE – [連線至資料庫 (Java SE 平台)](java-rds.md#java-rds-javase)
+ Java 搭配 Tomcat – [連線至資料庫 (Tomcat 平台)](java-rds.md#java-rds-tomcat)
+ Node.js – [連線至資料庫](create-deploy-nodejs.rds.md#nodejs-rds-connect)
+ .NET – [連線至資料庫](create_deploy_NET.rds.md#dotnet-rds-connect)
+ PHP – [使用 PDO 或 MySQLi 連接至資料庫](create_deploy_PHP.rds.md#php-rds-connect)
+ Python – [連線至資料庫](create-deploy-python-rds.md#python-rds-connect)
+ Ruby – [連線至資料庫](create_deploy_Ruby.rds.md#ruby-rds-connect)

最後，根據您應用程式讀取環境變數的時間，您可能需要重新啟動環境中執行個體上的應用程式伺服器。

**欲重新啟動您環境的應用程式伺服器**

1. 開啟 [Elastic Beanstalk 主控台](https://console.aws.amazon.com/elasticbeanstalk)，然後在**區域**清單中選取您的 AWS 區域。

1. 在導覽窗格中，選擇**環境**，然後在清單中選擇您環境的名稱。

1. 選擇 **Actions** (動作)，然後選擇 **Restart App Server(s)** (重新啟動應用程式伺服器)。