

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

# 使用 Amazon Aurora 全球資料庫
<a name="aurora-global-database"></a><a name="gdb"></a><a name="globaldb"></a><a name="global_db"></a><a name="global_database"></a>

 使用 Amazon Aurora 全球資料庫功能，您可以設定跨越多個 AWS 區域的多個 Aurora 資料庫叢集。Aurora 會自動將所有在主要資料庫叢集中所做的變更同步至一或多個次要叢集。Aurora 全球資料庫在一個區域中具有主要資料庫叢集，以及在不同區域中具有最多 10 個次要資料庫叢集。此多區域組態可從可能影響整個 AWS 區域的罕見中斷提供快速復原。在多個地理位置擁有您所有資料的完整副本，也能讓從世界各地廣泛分開位置連線的應用程式進行低延遲讀取操作。

**Topics**
+ [Amazon Aurora 全球資料庫的概觀](#aurora-global-database-overview)
+ [Amazon Aurora 全球資料庫的優點](#aurora-global-database.advantages)
+ [區域和版本可用性](#aurora-global-database.Availability)
+ [Amazon Aurora 全球資料庫的限制](#aurora-global-database.limitations)
+ [Amazon Aurora 全球資料庫入門](aurora-global-database-getting-started.md)
+ [管理 Amazon Aurora 全域資料庫](aurora-global-database-managing.md)
+ [連線至 Amazon Aurora 全域資料庫](aurora-global-database-connecting.md)
+ [在 Amazon Aurora 全域資料庫中使用寫入轉送](aurora-global-database-write-forwarding.md)
+ [在 Amazon Aurora 全球資料庫中使用切換或容錯移轉](aurora-global-database-disaster-recovery.md)
+ [監控 Amazon Aurora 全域資料庫](aurora-global-database-monitoring.md)
+ [針對 Amazon Aurora Global Database 使用藍/綠部署](aurora-global-database-bluegreen.md)
+ [將 Amazon Aurora 全域資料庫與其他 AWS 服務搭配使用](aurora-global-database-interop.md)
+ [升級 Amazon Aurora 全域資料庫](aurora-global-database-upgrade.md)

## Amazon Aurora 全球資料庫的概觀
<a name="aurora-global-database-overview"></a>

透過使用 Amazon Aurora 全球資料庫功能，您可以使用跨多個 AWS 區域的單一 Aurora 資料庫來執行全域分散式應用程式。

Aurora 全域資料庫包含一個寫入資料*的主要* AWS 區域 資料庫，以及最多 10 個唯讀*次要* AWS 區域資料庫。在主要 AWS 區域中，您將寫入操作發佈至主要資料庫叢集。最方便的方式是連線到 Aurora 全球資料庫寫入器端點，即使切換或容錯移轉至不同的 AWS 區域，它仍會指向主要資料庫叢集。進行任何寫入操作後，Aurora AWS 區域 會使用專用基礎設施將資料複寫至次要 ，延遲通常不到一秒。

在下圖中，您可以找到跨越兩個 的 Aurora 全域資料庫範例 AWS 區域。

![Aurora 全域資料庫具有單一主要和至少一個次要 Aurora 資料庫叢集。](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/AuroraUserGuide/images/aurora-global-databases-conceptual-illo.png)


您可以透過新增一或多個 Aurora 讀取器複本來提供唯讀工作負載，以獨立向上擴展每個次要叢集。您可以將 Aurora serverless 用於讀取器執行個體，以實現更精細且靈活的擴展。

只有主要叢集會執行寫入操作。執行寫入操作的用戶端會連線至 Aurora 全球資料庫寫入器端點，該端點一律指向主要叢集的寫入器資料庫執行個體。如圖所示，Aurora 會使用叢集儲存磁碟區，而非資料庫引擎進行快速且低額外負載的複寫。如需詳細資訊，請參閱 [Amazon Aurora 儲存體的概觀](Aurora.Overview.StorageReliability.md#Aurora.Overview.Storage)。

Aurora 全球資料庫專為擁有全球足跡的應用程式所設計。多個 中的唯讀次要資料庫叢集 AWS 區域 有助於最佳化更接近應用程式使用者的讀取操作。使用寫入轉送功能，您也可以設定您的全球資料庫，讓次要叢集將寫入請求傳送至主要叢集。如需詳細資訊，請參閱[在 Amazon Aurora 全域資料庫中使用寫入轉送](aurora-global-database-write-forwarding.md)。

Aurora 全球資料庫支援兩種變更主要資料庫叢集區域的操作，可視情況使用：*Aurora 全球資料庫切換*和 *Aurora 全球資料庫容錯移轉*。
+ 對於計劃的操作程序，例如區域輪換，請使用切換機制 (舊稱為「受管計畫容錯移轉」)。使用此功能，您可以將運作狀態良好的 Aurora 全球資料庫的主要叢集，重新放置到其中一個次要區域，而不會遺失資料。如需詳細資訊，請參閱 [針對 Amazon Aurora 全球資料庫執行轉換](aurora-global-database-disaster-recovery.md#aurora-global-database-disaster-recovery.managed-failover)。
+ 若要在主要區域發生中斷後復原 Aurora 全球資料庫，請使用容錯移轉機制。透過此功能，您可將主要資料庫叢集執行容錯移轉至另一個區域 (跨區域容錯移轉)。如需詳細資訊，請參閱 [針對 Aurora 全球資料庫執行受管容錯移轉](aurora-global-database-disaster-recovery.md#aurora-global-database-failover.managed-unplanned)。

## Amazon Aurora 全球資料庫的優點
<a name="aurora-global-database.advantages"></a>

Aurora 全球資料庫所提供的優點如下：
+ **以本機延遲提供全域讀取** – 如果您在世界各地設有辦公室，可以使用 Aurora 全球資料庫，在主要 AWS 區域中保持主要資訊來源的最新狀態。其他區域的辦公室可以在本地延遲的情況下存取自己區域中的資訊。
+ **可擴展次要 Aurora 資料庫叢集** – 您可以將更多唯讀執行個體新增至次要 AWS 區域來擴展次要叢集。次要叢集是唯讀的，因此它最多可支援 16 個唯讀資料庫執行個體，而不是單一 Aurora 叢集通常的 15 個複本限制。
+ **從主要資料庫叢集快速複寫到次要 Aurora 資料庫叢集** – Aurora 全球資料庫執行的複寫對主要資料庫叢集的效能影響不大。資料庫執行個體的資源完全投入處理應用程式讀取與寫入工作負載。
+ **從全區域中斷中復原** – 次要叢集可讓您建立可用於新的主要 AWS 區域 的 Aurora 全球資料庫，相較於傳統複寫解決方案，這個方法更快 (較低的 RTO)，且資料遺失率較低 (較低的 RPO)。

## 區域和版本可用性
<a name="aurora-global-database.Availability"></a>

功能可用性和支援會因每個 Aurora 資料庫引擎的特定版本以及 AWS 區域而有所不同。如需 Aurora 全球資料庫版本和區域可用性的詳細資訊，請參閱 [Aurora 全球資料庫的支援區域和資料庫引擎](Concepts.Aurora_Fea_Regions_DB-eng.Feature.GlobalDatabase.md)。

## Amazon Aurora 全球資料庫的限制
<a name="aurora-global-database.limitations"></a>

Aurora 全球資料庫目前有下列限制：
+ Aurora Global Database 適用於特定 AWS 區域 Aurora MySQL 和 Aurora PostgreSQL 版本。如需詳細資訊，請參閱[Aurora 全球資料庫的支援區域和資料庫引擎](Concepts.Aurora_Fea_Regions_DB-eng.Feature.GlobalDatabase.md)。
+ Aurora 全球資料庫對支援的 Aurora 資料庫執行個體類別、 AWS 區域數目上限等具有特定的組態需求。如需詳細資訊，請參閱[Amazon Aurora Global Database 的組態需求](aurora-global-database.configuration.requirements.md)。
+ 對於與 MySQL 5.7 相容的 Aurora MySQL，Aurora 全球資料庫切換需要 2.09.1 版或更新版本的次要版本。
+ 只有在主要和次要資料庫叢集具有相同的主要和次要引擎版本時，您才能在 Aurora 全球資料庫上執行受管跨區域轉換或容錯移轉。根據引擎和引擎版本，修補層級可能需要相同，或者修補層級可能不同。如需允許在具有不同修補層級的主要和次要叢集之間進行這些操作的引擎和引擎版本清單，請參閱 [受管跨區域轉換和容錯移轉的修補程式等級相容性](aurora-global-database-upgrade.md#aurora-global-database-upgrade.minor.incompatibility)。如果您的引擎版本需要相同的修補層級，您可以依照 [針對 Aurora 全球資料庫執行手動容錯移轉](aurora-global-database-disaster-recovery.md#aurora-global-database-failover.manual-unplanned) 中的步驟手動執行容錯移轉。
+ Aurora 全球資料庫目前不支援下列 Aurora 功能：
  + Aurora 中的回溯功能
+ 如需使用 RDS 代理功能搭配 Aurora 全球資料庫的限制，請參閱 [RDS Proxy 搭配全域資料庫的限制](rds-proxy-gdb.md#rds-proxy-gdb.limitations)。
+ 次要版本自動升級不適用於全球資料庫的 Aurora MySQL 和 Aurora PostgreSQL 叢集。請注意，您可以為全球資料庫叢集的資料庫執行個體指定此設定，但設定沒有任何作用。
+ Aurora 全球資料庫目前不支援次要資料庫叢集的 Aurora Auto Scaling。
+ 若要在執行 Aurora MySQL 5.7 的 Aurora 全球資料庫上使用資料庫活動串流 (DAS)，引擎版本必須為 2.08 版或更新版本。如需 DAS 的相關資訊，請參閱 [使用資料庫活動串流來監控 Amazon Aurora](DBActivityStreams.md)。
+ 下列限制目前適用於升級 Aurora 全球資料庫：
  + 在執行 Aurora 全域資料庫的主要版本升級時，無法為全域資料庫叢集套用自訂參數群組。您可於全域叢集的每個區域中建立自訂參數群組，然後在升級後手動將其套用至區域叢集。
  + 使用以 Aurora MySQL 為基礎的 Aurora 全域資料庫時，若啟用 `lower_case_table_names` 參數，即無法從 Aurora MySQL 第 2 版就地升級至第 3 版。如需詳細了解您可以使用的方法，請參閱 [主要版本升級](aurora-global-database-upgrade.md#aurora-global-database-upgrade.major)。
  + 使用 Aurora 全球資料庫時，如果啟用復原點目標 (RPO) 功能，就無法執行 Aurora PostgreSQL 資料庫引擎的主要版本升級。如需 RPO 功能的相關資訊，請參閱 [管理 Aurora PostgreSQL – 全域資料庫的 RPO](aurora-global-database-disaster-recovery.md#aurora-global-database-manage-recovery)。
  + 使用 Aurora 全球資料庫時，無法使用標準程序，將 Aurora MySQL 3.01 或 3.02 版執行次要版本升級至 3.03 版或更高版本。如需此程序的詳細資訊，請參閱 [透過修改引擎版本升級 Aurora MySQL](AuroraMySQL.Updates.Patching.ModifyEngineVersion.md)。

  如需升級 Aurora 全球資料庫相關資訊，請參閱 [升級 Amazon Aurora 全域資料庫](aurora-global-database-upgrade.md)。
+ 您無法單獨停止或啟動全球資料庫中的 Aurora 資料庫叢集。如需詳細資訊，請參閱 [停用和啟動 Amazon Aurora 資料庫叢集](aurora-cluster-stop-start.md)。
+ 在某些情況下，連接到次要 Aurora 資料庫叢集的 Aurora 讀取器資料庫執行個體可以重新啟動。如果主要 AWS 區域的寫入器資料庫執行個體發生重新啟動或容錯移轉，次要區域中的讀取器資料庫執行個體也會重新啟動。然後，次要叢集將無法使用，直到其所有執行個體都與主要資料庫叢集的寫入器執行個體重新同步為止。重新啟動或容錯移轉期間，主要叢集的行為與單一非全球資料庫叢集的行為相同。如需詳細資訊，請參閱[以 Amazon Aurora 進行複寫](Aurora.Replication.md)。

  在對主要資料庫叢集進行變更之前，請您務必了解對 全域資料庫的影響。如需詳細資訊，請參閱 [從計劃外中斷復原 Amazon Aurora 全域資料庫](aurora-global-database-disaster-recovery.md#aurora-global-database-failover)。
+ 當 Amazon Aurora 無法存取資料庫叢集的 AWS KMS 金鑰時，Aurora Global Database 目前不支援 `inaccessible-encryption-credentials-recoverable` 狀態。在這類情況下，加密的資料庫叢集會直接進入終端 `inaccessible-encryption-credentials` 狀態。如需這些狀態的詳細資訊，請參閱 [檢視資料庫叢集狀態](accessing-monitoring.md#Aurora.Status)。
+ Secrets Manager 不支援 Aurora 全球資料庫。當您將區域新增至全球資料庫時，您必須先關閉資料庫執行個體的 Secrets Manager 整合。
+ 使用 Aurora 全球資料庫的 Aurora PostgreSQL 型資料庫叢集具有以下限制：
  + 屬於 Aurora 全球資料庫一部分的 Aurora PostgreSQL 次要資料庫叢集不支援叢集快取管理。
  + 如果全球資料庫的主要資料庫叢集是以 Amazon RDS PostgreSQL 執行個體的複本為基礎，則無法建立次要叢集。請勿嘗試使用 AWS CLI、 AWS 管理主控台或 `CreateDBCluster` API 操作從該叢集建立次要 。嘗試執行這項操作逾時，無法建立次要叢集。

建議您使用與主要資料庫相同版本的 Aurora 資料庫引擎，建立全球資料庫的次要資料庫叢集。如需詳細資訊，請參閱[建立 Amazon Aurora 全域資料庫](aurora-global-database-creating.md)。