維持​ 為 Amazon Aurora​ 資料庫叢集 - Amazon Aurora

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

維持​ 為 Amazon Aurora​ 資料庫叢集

Amazon 定期在 Amazon RDS 資源上RDS執行維護。

料庫叢集維護更新概

維護通常涉及更新資料庫叢集中的以下資源:

  • 基礎硬體

  • 基礎作業系統 (OS)

  • 資料庫引擎版本

作業系統更新大多是因為安全性問題。我們建議您盡快進行。如需作業系統更新的詳細資訊,請參閱套用資料庫叢集的更新

維護更新期間的離線資源

某些維護項目需要 Amazon RDS 讓您的資料庫叢集短時間離線。需要資源離線的維護項目包括必要的作業系統或資料庫修補。所需的修補程式僅會針對與安全性和執行個體可靠性相關的修補程式自動安排。這類修補不常發生,通常每隔幾個月進行一次。維護僅需片刻的時間即可完成。

延遲資料庫執行個體和資料庫叢集

您選擇不立即套用的延遲資料庫叢集和執行個體修改會在維護期間套用。例如,您可以選擇在維護時段變更資料庫執行個體類別或叢集或資料庫參數群組。您使用待定重新開機設定所指定的這類修改不會顯示在待定維護清單中。如需修改資料庫叢集的詳細資訊,請參閱修改 Amazon Aurora 資料庫叢集

若要查看等待下一個維護時段的修改,請使用 describe-db-clusters AWS CLI 命令並檢查PendingModifiedValues字段。

最終一致性 DescribePendingMaintenanceActions API

Amazon RDS DescribePendingMaintenanceActions API 遵循最終一致性模型。這意味著該DescribePendingMaintenanceActions命令的結果可能不會立即顯示給所有後續命RDS令。使用前一個API命令後DescribePendingMaintenanceActions立即使用時,請記住這一點。

最終一致性可能會影響您管理維護更新的方式。例如,如果您執行ApplyPendingMaintenanceActions命令來更新資料庫執行個資料庫叢集的資料庫引擎版本,則最終會看到該命令DescribePendingMaintenanceActions。在這種情況下,DescribePendingMaintenanceActions可能會顯示即使已套用維護動作也未套用。

要管理最終一致性,您可以執行以下操作:

  • 在執行命令進行修改之前,請先確認資料資料庫叢集的狀態。使用指數輪詢演算法執行適當的DescribePendingMaintenanceActions命令,以確保您有足夠的時間讓先前的指令在系統中傳播。若要這麼做,請重複執行DescribePendingMaintenanceActions命令,從幾秒鐘的等待時間開始,並逐漸增加至五分鐘的等待時間。

  • 在後續指令之間增加等待時間,即使指DescribePendingMaintenanceActions令傳回準確的回應也是如此。從幾秒鐘的等待時間開始套用指數輪詢演算法,並逐漸增加至大約五分鐘的等待時間。

檢視擱置的維護更新

使用RDS主控台檢視資料庫叢集是否有可用的維護更新 AWS CLI」,或「」RDS API。如果有可用的更新,則會在 Amazon RDS 主控台上資料庫叢集的「維護」欄中指示該更新,如下所示。

可用的離線修補程式

如果資料庫叢集沒有可用的維護更新,欄的值就會是 none (無)

如果資料庫叢集有可用的維護更新,就可能是以下的欄值:

  • 必要 – 維護動作將套用至資源,無法無限期延遲。

  • available (可用) – 維護動作可用,但不會自動套用至資源。您可手動套用。

  • next window (下個時段) – 維護動作會在下個維護時段中套用到資源。

  • In progress (進行中) – 維護動作正在套用至資源。

若有可用的更新,您可以採取以下其中一個動作:

  • 如果維護值為 next window (下個時段),請由 Actions (動作) 選擇 Defer upgrade (延遲升級) 以延遲維護項目。如果維護動作已經啟動,則無法延遲維護動作。

  • 立即套用維護項目

  • 排定要在下一個維護時段中啟動的維護項目。

  • 不採取動作。

若要進行此項動作,請選擇資料庫叢集顯示其詳細資訊,然後選擇 Maintenance & backups (維護及備份)。隨即出現待定維護項目。

待定維護項目

維護時段決定等待中的操作何時開始,但不限制這些操作的總執行時間。維護操作不保證在維護時段結束之前完成,可能持續到超過指定的結束時間。如需更多詳細資訊,請參閱 Amazon RDS 維護窗口

如需 Amazon Aurora 引擎更新的資訊,以及這些引擎進行升級和修補的指示,請參閱Amazon Aurora 我的數據庫引擎更新 SQLAmazon Aurora 郵政更新 SQL

您也可以行 describe-pending-maintenance-actions AWS CLI 指令。

如需套用維護更新的資訊,請參閱套用資料庫叢集的更新

Amazon RDS 維護窗口

維護時段是每週套用任何系統變更的時間間隔。每個資料庫叢集都有每週的維護時段。維護時段是控制何時進行修改和軟體修補的機會。如需調整維護時段的詳細資訊,請參閱。

RDS套用維護時,會消耗資料庫叢集上的部分資源。您可能會發現,該操作對效能會造成些許影響。在極少數情況下,資料庫執行個體需要執行異地同步備份容錯移轉,才能完成維護更新作業。

若在特定某週排定維護事件,系統將在指定的 30 分鐘維護時段內啟動該事件。此外,多數維護事件也能在 30 分鐘的維護時段內完成,但較大型的維護事件可能需要 30 分鐘以上才能完成。當資料庫叢集停止時,維護時段會暫停。

30 分鐘的維護時段是從每個區域之 8 小時時段內隨機選取的。如果您在建立資料庫叢集時未指定維護時段,請在一週中隨機選取的日期指RDS派 30 分鐘的維護時段。

您可以在下方找到每個區域適用的時段,且系統會從中指派預設維護時段。

區域名稱 區域 時間區塊
美國東部 (維吉尼亞北部) us-east-1 凌晨三時至十一時 UTC
美國東部 (俄亥俄) us-east-2 凌晨三時至十一時 UTC
美國西部 (加利佛尼亞北部) us-west-1 上午 6 時至下午 2 時 UTC
美國西部 (奧勒岡) us-west-2 上午 6 時至下午 2 時 UTC
非洲 (開普敦) af-south-1 凌晨三時至十一時 UTC
亞太區域 (香港) ap-east-1 上午 6 時至下午 2 時 UTC
亞太區域 (海德拉巴) ap-south-2 上午 6 時半至下午 2 時半 UTC
亞太區域 (雅加達) ap-southeast-3 上午 8 時至下午 4 時 UTC
亞太區域 (馬來西亞) ap-southeast-5 上午 9 時至下午 5 時 UTC
亞太區域 (墨爾本) ap-southeast-4 11 時至晚上 7 時 UTC
亞太區域 (孟買) ap-south-1 上午 6 時至下午 2 時 UTC
亞太區域 (大阪) ap-northeast-3 晚上 10 時至晚上 9 時 UTC
亞太區域 (首爾) ap-northeast-2 下午一時至下午九時 UTC
亞太區域 (新加坡) ap-southeast-1 下午 2 時至晚上 10 時 UTC
亞太區域 (悉尼) ap-southeast-2 12 時至晚上 8 時 UTC
亞太區域 (東京) ap-northeast-1 下午一時至下午九時 UTC
加拿大 (中部) ca-central-1 凌晨三時至十一時 UTC
加拿大西部 (卡加利) ca-west-1 下午 6 時至 2 時 UTC
中國 (北京) cn-north-1 上午 6 時至下午 2 時 UTC
中國 (寧夏) cn-northwest-1 上午 6 時至下午 2 時 UTC
歐洲 (法蘭克福) eu-central-1 下午 9 時至 5 時 UTC
歐洲 (愛爾蘭) eu-west-1 晚上 10 時至 6 時 UTC
歐洲 (倫敦) eu-west-2 晚上 10 時至 6 時 UTC
歐洲 (米蘭) eu-south-1 下午 2 時至 10 時 UTC
歐洲 (巴黎) eu-west-3 晚上六時 UTC
歐洲 (西班牙) eu-south-2 下午 2 時至 10 時 UTC
歐洲 (斯德哥爾摩) eu-north-1 上午十一時至七時 UTC
歐洲 (蘇黎世) eu-central-2 下午 2 時至 10 時 UTC
以色列 (特拉維夫) il-central-1 凌晨三時至十一時 UTC
中東 (巴林) me-south-1 上午 6 時至下午 2 時 UTC
中東 (UAE) me-central-1 下午 5 時至下午 1 時 UTC
南美洲 (聖保羅) sa-east-1 上午 12 時至晚上 8 時 UTC
AWS GovCloud (美國東部) us-gov-east-1 下午 5 時至下午 1 時 UTC
AWS GovCloud (美國西部) us-gov-west-1 上午 6 時至下午 2 時 UTC

Aurora 資料庫叢集的自動次要版本升級

自動次要版本升級設定會指定 Aurora 是否自動將升級套用至資料庫叢集。這些升級包括新次要版本,其中包含其他功能,以及含有錯誤修正的修補程式。

此設定預設為開啟。針對每個新資料庫叢集,為此設定選擇適當的值。此值基於其重要性、預期的生命週期,以及每次升級之後所執行的驗證測試量。

如需了解如何關開啟或關閉自動次要版本升級設定,請參閱下列內容:

重要

對於新的和現有的資料庫叢集,強烈建議將此設定套用至資料庫叢集,而不是個別套用至叢集中的資料庫執行個體。如果叢集中的任何資料庫執行個體已關閉此設定,則資料庫叢集不會自動升級。

下表顯示在叢集和執行個體層級套用自動次要版本升級設定時的運作方式。

動作 叢集設定 執行個體設定 叢集是否自動升級?
您在資料庫叢集上將其設定為 True。 True 對於所有新的和現有的執行個體為 False
您在資料庫叢集上將其設定為 False。 False 對於所有新的和現有的執行個體為 False

其先前在資料庫叢集上設定為 True。

您至少在一個資料庫執行個體上將其設定為 False。

變更為 False 對於一或多個執行個體為 False

其先前在資料庫叢集上設定為 False。

您至少在一個資料庫執行個體 (但並非所有執行個體) 上將其設定為 False。

False 對於一或多個執行個體 (但並非所有執行個體) 為 True

其先前在資料庫叢集上設定為 False。

您在所有資料庫執行個體上將其設定為 True。

變更為 True 對於所有執行個體為 True

自動次要版本升級會透過 Amazon RDS DB 叢集事件預先通知,其類別為maintenance和 ID。RDS-EVENT-0156如需詳細資訊,請參閱 Aurora 的 Amazon RDS事件類別和事件訊息

自動升級會在維護時段期間進行。如果資料庫叢集中的個別資料庫執行個體維護時段不同於叢集維護時段,則會優先考慮叢集維護時段。

如需 Aurora Postgre 引擎更新的詳細資訊SQL,請參閱Amazon Aurora 郵政更新 SQL

如需 Aurora My 的自動次要版本升級設定的詳細資訊SQL,請參閱在次要 Aurora 之間啟用自動升級我的SQL版本。如需 Aurora 我的引擎更新的一般資訊SQL,請參閱Amazon Aurora 我的數據庫引擎更新 SQL

依循 使用主控台修改資料庫叢集CLI、和 API 中的一般程序。

主控台

修改資料庫叢集頁面的維護區段,選擇啟用自動次要版本升級的核取方塊。

AWS CLI

呼叫 modify-db-cluster AWS CLI 指令。為 --db-cluster-identifier 選項指定資料庫叢集的名稱,為 true 選項選擇 --auto-minor-version-upgrade。或者,指定 --apply-immediately 選項以立即為資料庫叢集啟用此設定。

RDS API

呼叫 M odifyDBCluster API 作業,並指定DBClusterIdentifier參數和true參數的資料庫叢集名稱。AutoMinorVersionUpgrade或者,將 ApplyImmediately 參數設定為 true 以立即為資料庫叢集啟用此設定。

依循 修改資料庫叢集中的資料庫執行個體 中的一般程序。

主控台

修改資料庫執行個體頁面的維護區段,選擇啟用自動次要版本升級的核取方塊。

AWS CLI

呼叫 modify-db-instance AWS CLI 指令。為 --db-instance-identifier 選項指定資料庫執行個體的名稱,為 true 選項選擇 --auto-minor-version-upgrade。或者,指定 --apply-immediately 選項以立即為資料庫執行個體啟用此設定。為叢集中的每個資料庫執行個體各自執行 modify-db-instance 命令。

RDS API

呼叫 M odifyDBInstance API 作業,並指定DBInstanceIdentifier參數和true參數的資料庫叢集名稱。AutoMinorVersionUpgrade或者,將 ApplyImmediately 參數設定為 true 以立即為資料庫執行個體啟用此設定。為叢集中的每個資料庫執行個體各別呼叫 ModifyDBInstance 操作。

您可以使用如下CLI命令來檢查 Aurora My SQL 叢集中所有資料庫執行個體的AutoMinorVersionUpgrade設定狀態。

aws rds describe-db-instances \ --query '*[].{DBClusterIdentifier:DBClusterIdentifier,DBInstanceIdentifier:DBInstanceIdentifier,AutoMinorVersionUpgrade:AutoMinorVersionUpgrade}'

此命令會產生類似下列的輸出:

[ { "DBInstanceIdentifier": "db-writer-instance", "DBClusterIdentifier": "my-db-cluster-57", "AutoMinorVersionUpgrade": true }, { "DBInstanceIdentifier": "db-reader-instance1", "DBClusterIdentifier": "my-db-cluster-57", "AutoMinorVersionUpgrade": false }, { "DBInstanceIdentifier": "db-writer-instance2", "DBClusterIdentifier": "my-db-cluster-80", "AutoMinorVersionUpgrade": true }, ... output omitted ...

在此範例中,資料庫叢集 my-db-cluster-57啟用自動次要版本升級已關閉,因為叢集的其中一個資料庫執行個體已關閉此功能。

選擇 Aurora 的頻率我的SQL維護更新

您可以控制每個資料庫叢集是經常進行還是很少進行 Aurora My SQL 升級。最佳選擇取決於您使用 Aurora My 的情況,以SQL及在 Aurora 上執行之應用程式的優先順序。如需需要較不頻繁升級之 Aurora My SQL 長期穩定性 (LTS) 發行版本的相關資訊,請參閱Aurora 我的SQL長期支援 (LTS) 版本

如果符合下列部分或全部條件,您可能很少選擇升級 Aurora My SQL 叢集:

  • 每次更新 Aurora My SQL 資料庫引擎時,應用程式的測試週期都需要很長時間。

  • 您有許多資料庫叢集或許多應用程式都在相同的 Aurora 我的SQL版本上執行。您偏好同時升級所有資料庫叢集和關聯的應用程式。

  • 您同時使用 Aurora 我SQL和我RDS的SQL。您希望將 Aurora My SQL 叢集和RDS我的SQL資料庫執行個體保持與相同層級的 MySQL.

  • 您的 Aurora 我的SQL應用程式正在生產中,或在其他方面具有關鍵 除了極少發生的關鍵修補程式之外,您無法承擔為了升級而停機所帶來的後果。

  • 您的 Aurora My SQL 應用程式不受後續 Aurora My SQL 版本中解決的效能問題或功能差距的限制。

如果上述因素適用於您的情況,您可以限制 Aurora My SQL DB 叢集的強制升級次數。您可以在建立或升級該資料庫叢集時,選擇稱為「長期 Support」(LTS) 的特定 Aurora My SQL 版本來達到此目的。這麼做可大幅減少資料庫叢集的升級週期、測試週期,以及升級相關停機的次數。

如果符合下列部分或全部條件,您可以選擇經常升級 Aurora My SQL 叢集:

  • 您應用程式的測試週期很直接且簡短。

  • 您的應用程式尚處於開發階段。

  • 您的資料庫環境使用各種 Aurora「我的SQL版本」,或「我的 Aurora」SQL 和「我RDS的SQL版本」。每個 Aurora 我的SQL叢集都有自己的升級週期。

  • 在增加使用 Aurora My 之前,您正在等待特定的效能或功能改進SQL。

如果上述因素適用於您的情況,您可讓 Aurora 更頻繁地套用重要的升級。若要這麼做,請將 Aurora My SQL 資料庫叢集升級為比SQL版本更新的 Aurora 我的LTS版本。這麼做可讓您更快地取得最新的效能提升、錯誤修正和功能。