

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

# 連線至 Amazon RDS 的多可用區域資料庫叢集
<a name="multi-az-db-clusters-concepts-connection-management"></a>

 多可用區域資料庫叢集具有三個資料庫執行個體，而非單一資料庫執行個體。每個連線會由特定資料庫執行個體處理。連線到多可用區域資料庫叢集時，您指定的主機名稱和連接埠會指向稱為*端點*的完全限定網域名稱。多可用區域資料庫叢集會使用端點機制，抽象處理這些連線，因此您不需準確指定資料庫叢集中要連線的資料庫執行個體。因此，在某些資料庫執行個體無法使用時，您不需將所有主機名稱硬式編碼或編寫您自己的邏輯，就可以重新路由連線。

寫入器端點會連接至資料庫叢集的寫入器資料庫執行個體 (支援讀取和寫入操作)。讀取器端點連接到僅支援讀取操作的兩個讀取器資料庫執行個體中的任何一個。

 使用端點，您可以根據您的使用案例將每個連線對應至適當的資料庫執行個體或資料庫執行個體群組。例如，若要執行 DDL 和 DML 陳述式，您可以連接至屬於寫入器資料庫執行個體的任何資料庫執行個體。若要執行查詢，您可以連接至讀取器端點，而多可用區域資料庫叢集會在所有讀取器資料庫執行個體間自動管理連線。針對診斷或調校，您可以連接至特定資料庫執行個體端點來檢查關於特定資料庫執行個體的詳細資訊。

如需連線至資料庫執行個體的詳細資訊，請參閱 [連接至 Amazon RDS 資料庫執行個體](CHAP_CommonTasks.Connect.md)。

如需連線至多可用性區域資料庫叢集的詳細資訊，請參閱下列主題。

**主題**
+ [叢集端點](#multi-az-db-clusters-concepts-connection-management-endpoints-cluster)
+ [讀取器端點](#multi-az-db-clusters-concepts-connection-management-endpoints-reader)
+ [執行個體端點](#multi-az-db-clusters-concepts-connection-management-endpoints-instance)
+ [高可用性連線](#multi-az-db-clusters-concepts-connection-management-endpoints-ha)
+ [使用 Amazon RDS 的 AWS 驅動程式連線至多可用區域資料庫叢集使用 Amazon Web Services (AWS) JDBC 驅動程式連線至多可用區域資料庫叢集](maz-cluster-connect-drivers.md)

## 多可用區域資料庫叢集端點的類型
<a name="multi-az-db-clusters-concepts-connection-management-endpoint-types"></a>

 端點代表包含主機地址的唯一識別符。下列類型的端點可從多可用區域資料庫叢集取得。

**叢集端點**  
 多可用區域資料庫叢集的*叢集端點* (或*寫入器端點*) 會連接至該資料庫叢集的目前寫入器資料庫執行個體。此端點是唯一可執行寫入操作 (如 DDL 和 DML 陳述式) 的端點。此端點也可以執行讀取操作。  
 每個多可用區域資料庫叢集具有一個叢集端點和一個寫入器資料庫執行個體。  
 您會對資料庫叢集上的所有寫入操作，包括插入、更新、刪除和 DDL 變更使用該叢集端點。您也可以對讀取操作 (例如查詢) 使用叢集端點。  
 如果資料庫叢集目前的寫入器資料庫執行個體失敗，多可用區域資料庫叢集會自動容錯移轉至新的寫入器資料庫執行個體。容錯移轉期間，資料庫叢集會繼續從新的寫入器資料庫執行個體對叢集端點提供連接請求，將對服務的中斷降到最低。  
 下例示範多可用區域資料庫叢集的叢集端點。  
 `mydbcluster.cluster-123456789012.us-east-1.rds.amazonaws.com`   
如需有關連線至叢集端點的詳細資訊，請參閱 [叢集端點](#multi-az-db-clusters-concepts-connection-management-endpoints-cluster)。

**讀取器端點**  
 多可用區域資料庫叢集的*讀取器端點*可為資料庫叢集的唯讀連線提供支援。對讀取操作 (例如 `SELECT` 查詢) 使用讀取器端點。藉由在讀取器資料庫執行個體上處理這些陳述式，此端點可降低寫入器資料庫執行個體上的額外負荷。它也可協助叢集擴展處理同時 `SELECT` 查詢的能力。每個多可用區域資料庫叢集有一個讀取器端點。  
 讀取器端點會將每個連線請求傳送到其中一個讀取器資料庫執行個體。當您針對工作階段使用讀取器端點時，您只能執行唯讀陳述式，例如該工作階段中的 `SELECT`。  
 下列範例說明多可用區域資料庫叢集的讀取器端點。讀取器端點的僅供讀取的意圖由叢集端點名稱內的 `-ro` 表示。  
 `mydbcluster.cluster-ro-123456789012.us-east-1.rds.amazonaws.com`   
如需有關連線至讀取器端點的詳細資訊，請參閱 [讀取器端點](#multi-az-db-clusters-concepts-connection-management-endpoints-reader)。

**執行個體端點**  
 *執行個體端點*會連接至多可用區域資料庫叢集內的特定資料庫執行個體。資料庫叢集中的每個資料庫執行個體都有自己唯一的執行個體端點。因此，資料庫叢集目前的寫入器資料庫執行個體會有一個執行個體端點，而資料庫叢集中的每個讀取器資料庫執行個體也都會有一個執行個體端點。  
 執行個體端點透過與資料庫叢集的連接提供直接控制。此控制可以協助您處理使用叢集端點或讀取器端點可能不適當的案例。例如，根據工作負載類型而定，您的用戶端應用程式可能要更精細的負載平衡。在此情況下，您可以設定多個用戶端來連接至資料庫叢集中的不同讀取器資料庫執行個體，以分配讀取工作負載。  
 下列範例說明多可用區域資料庫叢集中資料庫執行個體的執行個體端點。  
 `mydbinstance.123456789012.us-east-1.rds.amazonaws.com`   
如需連線至執行個體端點的詳細資訊，請參閱 [執行個體端點](#multi-az-db-clusters-concepts-connection-management-endpoints-instance)。

## 檢視端點
<a name="multi-az-db-clusters-concepts-connection-management-viewing"></a>

使用 主控台 AWS CLI或 Amazon RDS API 來檢視叢集、讀取器和執行個體端點。

------
#### [ Console ]

 在 中 AWS 管理主控台，您會在每個多可用區域資料庫叢集的詳細資訊頁面上看到叢集端點和讀取器端點。您可以在每個資料庫執行個體的詳細資訊頁面中查看執行個體端點。

------
#### [ AWS CLI ]

使用 AWS CLI，您會在 [describe-db-clusters](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-clusters.html) 命令的輸出中看到寫入器和讀取器端點。例如，下列命令會顯示目前 AWS 區域中所有叢集的端點屬性。

```
aws rds describe-db-cluster-endpoints
```

------
#### [ Amazon RDS API ]

 使用 Amazon RDS API，您可以呼叫 [DescribeDBClusterEndpoints](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusterEndpoints.html) 動作來擷取端點。輸出也會顯示 Amazon Aurora 資料庫叢集端點 (如果存在)。

------

## 叢集端點
<a name="multi-az-db-clusters-concepts-connection-management-endpoints-cluster"></a>

每個多可用區域叢集有單一內建叢集端點，其名稱和其他屬性是由 Amazon RDS 管理。您無法建立、刪除或修改這類型的端點。

您會在管理資料庫叢集、執行擷取、轉換、載入 (ETL) 操作，或是開發和測試應用程式時使用叢集端點。叢集端點會連接至叢集的寫入器資料庫執行個體。寫入器資料庫執行個體是您可以建立資料表和索引、執行 `INSERT` 陳述式，以及執行其他 DDL 和 DML 操作的唯一資料庫執行個體。

叢集端點所指向的實體 IP 地址，會在容錯移轉機制將新資料庫執行個體提升為叢集的資料庫執行個體時變更。如果您使用任何形式的連接集區或其他多工，請準備清空或降低任何快取的 DNS 資訊的存留時間。這麼做可確保您不會嘗試對變得無法使用或在容錯移轉之後現在為唯讀的資料庫執行個體建立讀寫連線。

## 讀取器端點
<a name="multi-az-db-clusters-concepts-connection-management-endpoints-reader"></a>

您可以為多可用區域資料庫叢集的唯讀連接使用讀取器端點。此端點可協助您的資料庫叢集處理查詢密集型工作負載。讀取器端點是您提供給應用程式以在叢集上執行報告或其他唯讀操作的端點。讀取器端點會將連線傳送到多可用區域資料庫叢集中的可用讀取器資料庫執行個體。

 每個多可用區域叢集有單一內建讀取器端點，其名稱和其他屬性是由 Amazon RDS 管理。您無法建立、刪除或修改這類型的端點。

## 執行個體端點
<a name="multi-az-db-clusters-concepts-connection-management-endpoints-instance"></a>

多可用區域資料庫叢集中的每個資料庫執行個體會有其自己的內建執行個體端點，其名稱和其他屬性是由 Amazon RDS 管理。您無法建立、刪除或修改這類型的端點。透過多可用區域資料庫叢集，您通常會比執行個體端點更常使用寫入器和讀取器端點。

在日常操作中，您使用執行個體端點的主要方式是用來診斷會影響多可用區域資料庫叢集中特定資料庫執行個體的容量或效能問題。連接至特定資料庫執行個體時，您可以檢查其狀態變數、指標等等。這麼做可幫助您判斷該資料庫執行個體中所發生情況，與叢集中其他資料庫執行個體所發生情況的差異。

## 高可用性連線
<a name="multi-az-db-clusters-concepts-connection-management-endpoints-ha"></a>

若為高可用性很重要的多可用區域資料庫叢集，請針對讀寫或一般用途連線使用寫入器端點，以及針對唯讀連線使用讀取器端點。寫入者和讀取者端點比執行個體端點更能善加管理資料庫執行個體容錯移轉。與執行個體端點不同的是，如果叢集中的資料庫執行個體變得無法使用，寫入者和讀取者端點會自動變更它們要連線到哪個資料庫執行個體。

 如果資料庫叢集的寫入器資料庫執行個體失敗，Amazon RDS 會自動容錯移轉至新的寫入器資料庫執行個體。它藉由將讀取器資料庫執行個體升級為新的寫入器資料庫執行個體來執行這個操作。如果發生容錯移轉，您可以使用寫入器端點來重新連接至新提升的寫入器資料庫執行個體。或者您可以使用讀取器端點來重新連接至資料庫叢集中的其中一個讀取器資料庫執行個體。在容錯移轉期間，在讀取器資料庫執行個體提升為新的寫入器資料庫執行個體之後，讀取器端點可能會短暫直接連接至資料庫叢集的新寫入器資料庫執行個體。如果您要設計自己的應用程式邏輯來管理執行個體端點的連線，則可手動或以程式設計方式探索資料庫叢集中可用資料庫執行個體的結果集。