我有一個 Amazon Aurora 資料庫執行個體,而且我想擴展該執行個體類別。為什麼我無法變更執行個體類別,以及我該如何解決擴展資料庫執行個體時出現的錯誤?
簡短描述
變更 Amazon Aurora 資料庫執行個體的執行個體類別時,您可能會收到下列其中一個錯誤訊息:
- 「無法修改執行個體類別,因為目前執行個體的可用區域中沒有請求類別的執行個體。請稍後重試您的請求」
- 「資料庫叢集 <cluster> 需要進行資料庫引擎升級才能支援 db.r4.large」
- 「RDS 不支援使用下列組合建立資料庫執行個體: DBInstanceClass=db.r5.8xlarge、Engine=aurora、EngineVersion=5.6.10a、LicenseModel=general-public-license」
在對任何錯誤進行疑難排解之前,最佳做法是在最新的引擎版本上執行資料庫叢集,或使用長期支援 (LTS) 版本。較新的引擎版本包含修復,改善了安全性、穩定性和執行個體可用性。
- 如果您的資料庫叢集是在 Amazon Relational Database Service (Amazon RDS) 主控台中顯示為 5.6.10a 的版本上執行,請考慮測試並升級至 1.22.3 (偏好版本) 或 1.19.6 (LTS 版本)。
- 如果您的資料庫叢集是在 Amazon RDS 主控台中顯示為 5.7.12 的版本上執行,請考慮測試並升級至 2.07.3 (偏好版本) 或 2.04.9 (LTS 版本)。
- 從較舊版本升級之後,您可能還需要對資料庫叢集中的執行個體執行作業系統升級。套用這些升級,然後再繼續。
注意: 您可以使用 Aurora 複製功能建立和測試資料庫升級。此外,在某些區域或可用區域 (AZ) 中,較舊的執行個體類別 (例如 T2 或 R3) 可能無法使用。最佳做法是使用 T3 和 R5 等較新的執行個體類別。
解決方法
無法修改執行個體類別,因為目前執行個體的可用區域中沒有請求類別的執行個體。請稍後重試您的請求。
這是當您變更 Aurora 資料庫執行個體的執行個體類別時最常見的錯誤之一。發生此錯誤有兩個可能的原因:
- **AZ 沒有適合您選擇的目標執行個體類別的容量。**當 AZ 沒有適合目標執行個體類別的足夠隨需容量時,請先等待幾分鐘,然後再次嘗試修改執行個體類別。
- **目標執行個體類別在 AZ 不受支援。**當 Aurora 引擎和執行個體在其中執行的 AZ 的引擎版本不支援目標執行個體類別時,您會收到此錯誤。若要檢查哪些 AZ 支援您的引擎、引擎版本和執行個體類別,請執行以下命令:
aws rds describe-orderable-db-instance-options --engine <engine_name> --engine-version <engine_version> --db-instance-class <instance_class> --query 'OrderableDBInstanceOptions[].AvailabilityZones'
範例:
aws rds describe-orderable-db-instance-options --engine aurora --engine-version 5.6.10a --db-instance-class db.t3.medium --query 'OrderableDBInstanceOptions[].AvailabilityZones'
資料庫叢集 <cluster> 需要進行資料庫引擎升級才能支援 db.r4.large
雖然此錯誤很少見,但是如果資料庫叢集在較舊版本的 Aurora 上執行時,就會發生這種錯誤。db.r4 執行個體系列僅在 Aurora 1.14.4 版及更新版本中受到支援。若要尋找資料庫叢集的確切引擎版本,請登入叢集並執行以下查詢:
SELECT @@AURORA_VERSION;
您可以透過執行 apply-pending-maintenance-actions CLI 命令來排程資料庫引擎升級。
aws rds apply-pending-maintenance-action --resource-identifier arn:aws:rds:us-east-1:123456789012:cluster:aurora-cluster --apply-action system-update --opt-in-type immediate
RDS 不支援使用下列組合建立資料庫執行個體: DBInstanceClass=db.r5.8xlarge、Engine=aurora、EngineVersion=5.6.10a、LicenseModel=general-public-license
如果您執行的是較舊版本的 Aurora,就會發生此錯誤。並非所有 Aurora 版本均支援 db.r5 執行個體系列。例如,對於 Aurora MySQL 5.6 叢集,db.r5.8xlarge 執行個體類別在 Aurora 1.19.6 版及更新版本中受到支援。如果叢集執行的是較舊版本,且您嘗試變更此執行個體類別,就會收到此錯誤。
執行類似於下列內容的 CLI 命令,尋找您的引擎和執行個體類別組合支援的引擎版本。
aws rds describe-orderable-db-instance-options --engine aurora --db-instance-class db.r5.8xlarge --query 'OrderableDBInstanceOptions[].EngineVersion'
相關資訊
Amazon Aurora 支援的資料庫執行個體類別