為什麼我的 Aurora PostgreSQL 相容執行個體在主要版本升級後會有較高的 CPU 使用率?

上次更新日期:2022 年 11 月 24 日

在主要版本升級後,我的 Amazon Aurora PostgreSQL 相容資料庫執行個體具有較高的 CPU。在升級之前,我的資料庫執行個體表現良好。

簡短描述

首先,請遵循與 Aurora PostgreSQL 相容的主要升級程序,以確保升級成功。在主要版本升級之前和之後,您需要執行一些步驟,因此請檢查您是否已逐步執行程序。如果您略過此程序中的任何步驟,升級可能會失敗。或者,即使升級本身成功,您也可能會遇到效能影響,例如高 CPU。

解決方案

  1. 將生產 Aurora PostgreSQL 相容叢集升級到新的主要版本之前,請在生產資料庫的複本上測試升級。若要建立重複的測試執行個體,您可以從最近的快照還原資料庫,或複製資料庫。

  2. 每個主要版本都包含查詢優化器的增強功能,這些增強功能旨在改善資料庫效能。但是資料庫規劃器/優化器可能不會選擇執行查詢的最佳計劃。因此,在新的主要版本中執行相同查詢時,您可能會看到效能下降。因此,在執行主要版本升級之前,始終測試和檢閱查詢效能是最佳實務。在 Aurora PostgreSQL 相容中,您可以使用查詢計劃管理 (QPM) 功能來管理不同主要版本的查詢計劃穩定性。

  3. 主要版本升級後 CPU 使用率過高的主要原因之一,是統計資料不是最新版本。發生這種情況是因為主要版本升級期間不會傳輸目錄 pg_statistic 中儲存的統計資料。這可能會導致資料庫優化器無法選擇執行查詢的最佳計劃。若要避免此問題,請重新產生執行 ANALYZE (分析) 操作的所有統計資料,以重新整理 pg_statistic 資料表。針對 Aurora PostgreSQL 相容資料庫執行個體上的每個資料庫執行此動作。

    注意:請務必在沒有任何參數的情況下執行 ANALYZE (分析) 命令,以產生目前資料庫中所有一般資料表的統計資料。

ANALYZE VERBOSE

如果您按照以下步驟操作後遇到效能問題,請參閱如何針對 Amazon RDS 或 Amazon Aurora PostgreSQL 的高 CPU 使用率進行疑難排解?


此文章是否有幫助?


您是否需要帳單或技術支援?