本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Amazon Aurora 全域資料庫
使用 Amazon Aurora Global Database 功能,您可以設定多個跨多個的 Aurora 資料庫叢集 AWS 區域。Aurora 會自動將主要資料庫叢集中所做的所有變更同步至一或多個次要叢集。Aurora 全域資料庫在一個區域中具有主要資料庫叢集,以及在不同區域中具有最多五個次要資料庫叢集。此多區域組態可從可能影響整個 的罕見中斷提供快速復原 AWS 區域。在多個地理位置擁有您所有資料的完整副本,也能為從世界各地廣泛分開的位置連線的應用程式提供低延遲的讀取操作。
主題
- Amazon Aurora Global Database 概觀
- Amazon Aurora Global Database 的優點
- 區域和版本可用性
- Amazon Aurora Global Database 的限制
- Amazon Aurora Global Database 入門
- 管理 Amazon Aurora 全域資料庫
- 連線至 Amazon Aurora Global Database
- 在 Amazon Aurora 全域資料庫中使用寫入轉送
- 在 Amazon Aurora Global Database 中使用切換或容錯移轉
- 監控 Amazon Aurora 全域資料庫
- 將 Amazon Aurora 全域資料庫與其他 AWS 服務搭配使用
- 升級 Amazon Aurora 全域資料庫
Amazon Aurora Global Database 概觀
透過使用 Amazon Aurora Global Database 功能,您可以使用跨越多個 的單一 Aurora 資料庫來執行全域分佈的應用程式 AWS 區域。
Aurora 全域資料庫包含一個寫入資料的主要 AWS 區域 資料庫,以及最多五個唯讀次要 AWS 區域資料庫。您向主要資料庫叢集中的主要資料庫叢集發出寫入操作 AWS 區域。最方便的方式是連線到 Aurora Global Database writer 端點,即使切換或容錯移轉至不同的資料庫叢集,它仍會指向主要資料庫叢集 AWS 區域。進行任何寫入操作後,Aurora AWS 區域 會使用專用基礎設施將資料複寫至次要設備,延遲通常不到一秒。
在下圖中,您可以找到跨越兩個 的 Aurora 全域資料庫範例 AWS 區域。
您可以透過新增一或多個 Aurora 讀取器執行個體來提供唯讀工作負載,以獨立擴展每個次要叢集。您可以使用...Aurora Serverless v2 適用於讀取器執行個體,以進行更精細且靈活的擴展。
只有主要叢集會執行寫入操作。執行寫入操作的用戶端會連線至 Aurora Global Database writer 端點,而此端點一律指向主要叢集的寫入器資料庫執行個體。如圖表所示,Aurora 使用叢集儲存磁碟區而非資料庫引擎進行快速、低額外負荷的複寫。如需進一步了解,請參閱 Amazon Aurora 儲存體的概觀。
Aurora Global Database 專為具有全球足跡的應用程式而設計。多個 中的唯讀次要資料庫叢集 AWS 區域 有助於最佳化更接近應用程式使用者的讀取操作。您也可以使用寫入轉送功能來設定全域資料庫,讓次要叢集將寫入請求傳送至主要叢集。如需詳細資訊,請參閱在 Amazon Aurora 全域資料庫中使用寫入轉送。
Aurora Global Database 支援兩種不同的操作,以變更主要資料庫叢集的區域,視案例而定:Aurora Global Database 切換和 Aurora Global Database 容錯移轉。
-
對於區域輪換等計劃的操作程序,請使用切換機制 (先前稱為「管理計劃容錯移轉」)。使用此功能,您可以將運作狀態良好的 Aurora 全域資料庫主要叢集重新定位至其中一個次要區域,而不會遺失資料。如需進一步了解,請參閱 針對 Amazon Aurora 全球資料庫執行轉換。
-
若要在主要區域中發生中斷後復原 Aurora 全域資料庫,請使用容錯移轉機制。使用此功能,您可以執行從主要資料庫叢集到另一個區域的容錯移轉 (跨區域容錯移轉)。如需進一步了解,請參閱 針對 Aurora 全球資料庫執行受管容錯移轉。
Amazon Aurora Global Database 的優點
透過使用 Aurora Global Database,您可以獲得下列優點:
具有本機延遲的全域讀取 – 如果您在世界各地設有辦公室,您可以使用 Aurora Global Database 來讓主要資訊來源保持最新 AWS 區域狀態。其他區域的辦公室可以在本地延遲的情況下存取自己區域中的資訊。
可擴展的次要 Aurora 資料庫叢集 – 您可以將更多唯讀執行個體新增至次要 來擴展次要叢集 AWS 區域。次要叢集是唯讀的,因此可以支援最多 16 個唯讀資料庫執行個體,而不是單一 Aurora 叢集的一般限制為 15 個。
從主要資料庫叢集快速複寫到次要 Aurora 資料庫叢集 – Aurora Global Database 執行的複寫對主要資料庫叢集的效能影響很小。資料庫執行個體的資源完全投入處理應用程式讀取與寫入工作負載。
從全區域中斷復原 – 次要叢集可讓您在新的主要 AWS 區域 中更快速地 (較低RTO) 提供 Aurora 全域資料庫,且資料遺失 (較低RPO) 比傳統複寫解決方案更少。
區域和版本可用性
功能可用性和支援會因每個 Aurora 資料庫引擎的特定版本以及 AWS 區域而有所不同。如需 Aurora Global Database 版本和區域可用性的詳細資訊,請參閱 Aurora 全域資料庫支援的區域和資料庫引擎。
Amazon Aurora Global Database 的限制
下列限制目前適用於 Aurora Global Database:
Aurora Global Database 在特定 AWS 區域 和特定 Aurora MySQL 和 Aurora PostgreSQL 版本中提供。如需詳細資訊,請參閱Aurora 全域資料庫支援的區域和資料庫引擎。
Aurora Global Database 具有支援 Aurora 資料庫執行個體類別的特定組態需求、最大 數量 AWS 區域等。如需詳細資訊,請參閱Amazon Aurora Global Database 的組態需求。
對於 Aurora MySQL with MySQL 5.7 相容性,Aurora 全域資料庫切換需要 2.09.1 版或更高的次要版本。
-
只有在主要和次要資料庫叢集具有相同的主要和次要引擎版本時,才能使用 Aurora Global Database 執行受管跨區域切換或容錯移轉。根據引擎和引擎版本,修補層級可能需要相同,或者修補層級可能不同。如需允許具有不同修補程式層級之主要和次要叢集之間這些操作的引擎和引擎版本清單,請參閱 受管跨區域轉換和容錯移轉的修補程式等級相容性。如果您的引擎版本需要相同的修補程式層級,您可以依照中的步驟手動執行容錯移轉針對 Aurora 全球資料庫執行手動容錯移轉。
Aurora Global Database 目前不支援下列 Aurora 功能:
-
Aurora Serverless v1
-
Aurora 中的回溯功能
-
如需搭配 Aurora Global Database 使用 RDS Proxy 功能的限制,請參閱 RDS Proxy 搭配全域資料庫的限制。
自動次要版本升級不適用於屬於全域資料庫的 Aurora MySQL 和 Aurora PostgreSQL 叢集。請注意,您可以為全球資料庫叢集的資料庫執行個體指定此設定,但設定沒有任何作用。
Aurora Global Database 目前不支援次要資料庫叢集的 Aurora Auto Scaling。
若要在執行 Aurora MySQL 5.7 的 Aurora 全域資料庫上使用資料庫活動串流 (DAS),引擎版本必須為 2.08 版或更新版本。如需 DAS 的資訊,請參閱「使用資料庫活動串流監控 Amazon Aurora」。
-
下列限制目前適用於升級 Aurora Global Database:
在執行 Aurora 全域資料庫的主要版本升級時,無法為全域資料庫叢集套用自訂參數群組。您可於全域叢集的每個區域中建立自訂參數群組,然後在升級後手動將其套用至區域叢集。
-
使用以 Aurora My 為基礎的 Aurora 全域資料庫SQL,如果開啟
lower_case_table_names
參數,您就無法執行從 Aurora MySQL 第 2 版到第 3 版的就地升級。如需詳細了解您可以使用的方法,請參閱 主要版本升級。 使用 Aurora Global Database,如果復原點目標 (RPO) 功能已開啟,則無法執行 Aurora PostgreSQL 資料庫引擎的主要版本升級。如需RPO此功能的詳細資訊,請參閱 RPOs 管理SQL以 Aurora Postgre 為基礎的全域資料庫。
使用 Aurora 全域資料庫時,您無法透過使用標準程序,從 Aurora MySQL 3.01 或 3.02 版升級至 3.03 或更高版本來執行次要版本升級。如需此程序的詳細資訊,請參閱 透過修改引擎版本升級 Aurora MySQL 。
如需升級 Aurora Global Database 的詳細資訊,請參閱 升級 Amazon Aurora 全域資料庫。
您無法個別停止或啟動全域資料庫中的 Aurora 資料庫叢集。如需進一步了解,請參閱 停用和啟動 Amazon Aurora 資料庫叢集。
連接至次要 Aurora 資料庫叢集的 Aurora 讀取器資料庫執行個體在某些情況下可以重新啟動。如果主要 AWS 區域的寫入器資料庫執行個體經歷重新啟動或容錯移轉,則次要區域中的讀取器資料庫執行個體也會重新啟動。然後,直到所有讀取器資料庫執行個體都與主要資料庫叢集的寫入器執行個體重新同步之前,次要叢集都無法使用。重新啟動或容錯移轉期間的主要叢集行為與單一非全域資料庫叢集的行為相同。如需詳細資訊,請參閱以 Amazon Aurora 進行複寫。
在對主要資料庫叢集進行變更之前,請您務必了解對 全域資料庫的影響。如需進一步了解,請參閱 從計劃外中斷復原 Amazon Aurora 全域資料庫。
當 Amazon Aurora 無法存取資料庫叢集的 AWS KMS 金鑰時,Aurora Global Database 目前不支援
inaccessible-encryption-credentials-recoverable
狀態。在這類情況下,加密的資料庫叢集會直接進入終端inaccessible-encryption-credentials
狀態。如需這些狀態的詳細資訊,請參閱 檢視資料庫叢集狀態。-
使用 Aurora Global Database SQL的 Aurora Postgre 資料庫叢集具有下列限制:
屬於 Aurora 全域資料庫一部分的 Aurora PostgreSQL 資料庫叢集不支援叢集快取管理。
-
如果全域資料庫的主要資料庫叢集是以 Amazon RDS PostgreSQL 執行個體的複本為基礎,則無法建立次要叢集。請勿嘗試使用 AWS CLI、 AWS Management Console或
CreateDBCluster
API操作從該叢集建立次要 。嘗試執行這項操作逾時,無法建立次要叢集。
我們建議您使用與主要資料庫引擎相同的 Aurora 資料庫引擎版本,為全域資料庫建立次要資料庫叢集。如需詳細資訊,請參閱建立 Amazon Aurora 全域資料庫。