在 Amazon RDS for PostgreSQL 版本進行重大升級後,如何保持一致的應用程式行為?

1 分的閱讀內容
0

我想在升級 Amazon Relational Database Service (Amazon RDS) for PostgreSQL 資料庫時,避免出現應用程式效能問題。

解決方法

為您的 Amazon RDS for PostgreSQL 生產執行個體設定測試環境

若要建立測試環境,您必須從最近的快照還原資料庫。或者,對您的資料庫進行時間點還原,還原至最新可還原時間,然後執行升級至新還原的快照。

請完成下列步驟:

  1. 從最近的快照還原資料庫或執行時間點還原。
  2. 對還原的資料庫執行版本升級

進行功能測試

**注意:**如需詳細資訊,請參閱 PostgreSQL 網站上的 Amazon RDS for PostgreSQL 更新移轉到版本 17.2

當您執行主要版本升級時,任何版本變更都可能會影響您的應用程式相容性。例如,如果未正確調整 Max_connection 參數,RDS for PostgreSQL 中的連線管理變更可能會導致應用程式中斷。

若要識別任何版本相容性問題,您必須針對測試資料庫使用類似生產的工作負載測試應用程式功能。然後,您可以進行必要的應用程式程式碼變更。

進行效能測試

建立目前效能基準

請完成下列步驟:

  1. 啟用查詢計劃記錄的 auto_explain。如需詳細資訊,請參閱 PostgreSQL 網站上的 auto_explain
    **注意:**如需詳細資訊,請參閱如何記錄 Amazon RDS PostgreSQL 或 Aurora PostgreSQL 查詢的執行計劃,以調整查詢效能?
  2. 啟用具有持續時間的查詢記錄。如需詳細資訊,請參閱如何使用 Amazon RDS 開啟 PostgreSQL 的查詢記錄功能?
  3. 啟用 Enhanced MonitoringPerformance Insights
  4. 若要取得資料庫效能和工作負載的歷史比較,請將資料庫日誌匯出為 PostgreSQL 日誌並傳送至 Amazon CloudWatch

識別效能問題

若要比較資料庫版本之間的執行策略和成本,請使用 EXPLAIN 查詢計劃。若要監控和比較舊版本的實際查詢回應時間和資源使用模式,請使用查詢記錄Performance Insights

請完成下列步驟:

  1. 比較不同版本之間的 EXPLAIN 計劃。如需詳細資訊,請參閱 PostgreSQL 網站上的 EXPLAIN
  2. 若要更新資料表統計資料,請使用 ANALYZE 並提高 default\statistics\target 值。如需詳細資訊,請參閱 PostgreSQL 網站上的 ANALYZE
  3. 若要消除索引膨脹,請使用 **REINDEX **。如需詳細資訊,請參閱 PostgreSQL 網站上的 REINDEX
  4. (選用) 若要為相關資料欄建立延伸統計資料,請使用 CREATE STATISTICS 命令。如需詳細資訊,請參閱 PostgreSQL 網站上的 CREATE STATISTICS
    **注意:**如果需要,請使用 pg_hint_plan 擴充。

進行壓力測試

請完成下列步驟:

  1. 根據您的應用程式工作負載使用包含自訂指令碼的 pgbench。如需詳細資訊,請參閱 PostgreSQL 網站上的 pgbench
  2. 若要測試資料庫行為並監控高負載下的效能指標,您必須套用類似生產的工作負載。如需詳細資訊,請參閱 PostgreSQL 基準觀察和考量事項,以及使用專用日誌磁碟區對 Amazon RDS for PostgreSQL 進行基準測試

相關資訊

PostgreSQL 網站上的規劃器方法組態

了解 PostgreSQL 中的統計資料

如何對 RDS for PostgreSQL 執行主要版本升級

AWS 官方
AWS 官方已更新 3 個月前