跳至內容

如何將 Amazon RDS for PostgreSQL 主要版本升級的停機時間降到最低,並將效能最佳化?

1 分的閱讀內容
0

我想要將 Amazon Relational Database Service (Amazon RDS) for PostgreSQL 資料庫進行主要版本升級的停機時間降到最低,並將效能最佳化。

簡短說明

**注意:**主要版本升級可能包含與您現有應用程式不相容的資料庫變更。在您升級之前,請務必在非生產環境中徹底測試升級。如需更多資訊,請參閱如何為 RDS for PostgreSQL 執行主要版本升級

若要升級您的資料庫執行個體,請使用以下其中一種方法:

  • 快照還原
  • 手動升級
  • 藍/綠部署
  • AWS Database Migration Service (AWS DMS)

先決條件:

解決方法

**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤訊息,請參閱對 AWS CLI 錯誤進行疑難排解。此外,請確定您使用的是最新的 AWS CLI 版本

最佳化升級效能

若要在您執行主要引擎版本升級時將潛在問題降到最低,請採取以下動作:

若要識別處於執行中狀態且超過 10 分鐘的交易,請執行以下命令:

SELECT * FROM pg_stat_activity
WHERE pid <> pg_backend_pid()
AND state in ('idle', 'idle in transaction', 'idle in transaction (aborted)', 'disabled','active')
AND state_change < current_timestamp - INTERVAL '10' MINUTE
AND usename != 'rdsadmin';

如果您識別出長時間執行的交易,請使用 pg_cancel_backendpg_terminate_backend 結束交易。如需更多資訊,請參閱 PostgreSQL 網站上的伺服器訊號函數

使用快照還原進行升級

建立資料庫快照,將您的資料庫執行個體升級為較新的主要版本快照,然後將其還原至新的資料庫執行個體

**注意:**您必須為新的資料庫執行個體使用不同的名稱,而且您的應用程式在升級程序期間必須停止。另外,您必須在升級完成後更新應用程式端點。

手動升級您的資料庫執行個體

若要手動升級您的資料庫執行個體,請參閱手動升級引擎版本

**注意:**手動資料庫升級需要停機。若要將停機時間降到最低,請使用藍/綠部署。

使用藍/綠部署升級

若要建立藍/綠部署,請參閱建立藍/綠部署。當您位於綠色環境時,請 指定較新的引擎版本

如需藍/綠部署的更多資訊,請參閱 Amazon RDS 藍/綠部署的限制和考量事項

使用 AWS DMS 升級

使用 AWS Database Migration Service (AWS DMS),將資料從您目前的資料庫執行個體遷移到已升級版本的新執行個體。AWS DMS 支援變更資料擷取 (CDC),可進行持續複寫。

升級 pg_statistics 資料表

完成主要引擎版本升級後,請在所有資料庫上執行 ANALYZE VERBOSE; 命令,以升級 pg_statistics 資料表。如需更多資訊,請參閱 PostgreSQL 網站上的 ANALYZE

AWS 官方已更新 5 個月前