我想要執行 Amazon Aurora 全球叢集的主要版本升級。或者,由於版本不相符,我無法在 Aurora 全球叢集中進行容錯移轉。
簡短描述
透過對 Amazon Aurora 全球資料庫執行主要版本升級,您可升級全球資料庫叢集,而非升級其包含的叢集。升級程序會同時升級組成 Aurora 全球資料庫的所有資料庫叢集。於生產 Aurora 全球資料庫中執行升級之前,請務必先在升級版本上測試應用程式。升級程序需要停機時間,建議您於計劃的維護時段期間執行升級。
解決方案
使用 Amazon RDS 主控台關閉 rds.global_db_rpo
若您的全球資料庫叢集已設定了復原點目標 (RPO),請於升級至新的主要版本之前重設 rds.global_db_rpo 參數。若 RPO 已開啟,主要版本升級會失敗,且您會收到類似下列的錯誤訊息:
"Error: We're sorry, your request to modify global database GlobalCluster-GCTest has failed.Primary cluster cannot have RPO setting enabled during major version upgrade. (錯誤:很抱歉,您修改全球資料庫 GlobalCluster-GCTest 的請求失敗。)"
使用這些步驟,來使用 Amazon Relational Database Service (Amazon RDS) 主控台關閉 rds.global_db_rpo。
注意:依預設關閉此參數。因此,若您尚未開啟 RPO,請略過以下步驟。
- 登入 Amazon RDS 主控台。
- 在導覽窗格中,選擇 Parameter groups (參數群組)。
- 選擇您的主要資料庫叢集參數群組。
- 選擇 Edit parameters (編輯參數)。
- 選擇 rds.global_db_rpo 參數旁的方塊。
- 選擇 Reset (重設)。
- 在 Reset parameters in DB parameter group (重設資料庫參數群組中的參數) 下,選擇 Reset parameters (重設參數)。
如需如何使用主控台重設參數的詳細資訊,請參閱修改資料庫叢集參數群組中的參數。
使用 AWS CLI 關閉 rds.global_db_rpo
您還可使用 AWS Command Line Interface (AWS CLI) 執行 reset-db-cluster-parameter-group 命令來關閉 RPO。
對於 Linux、macOS 或 Unix:
aws rds reset-db-cluster-parameter-group \
--db-cluster-parameter-group-name global_db_cluster_parameter_group \
--parameters "ParameterName=rds.global_db_rpo,ApplyMethod=immediate"
對於 Windows:
aws rds reset-db-cluster-parameter-group ^
--db-cluster-parameter-group-name global_db_cluster_parameter_group ^
--parameters "ParameterName=rds.global_db_rpo,ApplyMethod=immediate"
使用主控台執行主要版本升級
執行下列步驟之前,請務必遵循將生產資料庫叢集升級至新的主要版本之前所述的建議。
- 登入 Amazon RDS 主控台。
- 在瀏覽窗格中,選擇 Databases (資料庫),然後選擇要升級的全域 Aurora 叢集。注意:請務必選擇 Databases (資料庫) 下的頂層項目。如要確認這一點,請選擇 Role (角色),並確認您看到 Global database (全球資料庫)。
- 選擇 Modify (修改)。
- 在 Modify DB cluster (修改資料庫叢集) 頁面上,若為 Engine version (引擎版本),選擇最新版本。
- 選擇 Continue (繼續),然後檢閱修改摘要。
- 如要立即套用變更,請選擇 Apply immediately (立即套用)。選擇此選項可能會導致中斷。
- 選擇 Modify Cluster (修改叢集),以儲存變更。
使用 AWS CLI 執行主要版本升級
如要開始 Aurora 全球資料庫的升級,請使用 AWS CLI 執行 modify-global-cluster 命令:
aws rds modify-global-cluster --global-cluster-identifier <cluster global identifier> --engine-version <engnie_version> --allow-major-version-upgrade
升級 Aurora 全球資料庫的限制
下列限制適用於升級 Aurora 全球資料庫:
- 在您執行該 Aurora 全球資料庫的主要版本升級時,無法將自訂參數群組套用至全域資料庫叢集。在全域叢集的每個區域中建立自訂參數群組,然後在升級後將其手動套用至地區叢集。
- 使用以 PostgreSQL 為基礎的 Aurora 全球資料庫時,若 RPO 已開啟,您便無法執行 Aurora 資料庫引擎的主要版本升級。如需 RPO 功能的相關資訊,請參閱管理 Aurora PostgreSQL 型全域資料庫的 RPO。
相關資訊
將 Aurora PostgreSQL 資料庫引擎升級至新的主要版本
升級 Amazon Aurora 全球資料庫
全球資料庫的主要升級