在 AlloyDB for PostgreSQL 執行就地主要版本升級時,如要解決升級前檢查違規、擴充功能不相容和資源限制錯誤,請套用升級作業傳回錯誤訊息的建議修正。如需一般升級疑難排解步驟,請參閱「排解就地主要版本升級問題」。
常見的主要版本升級錯誤
以下各節說明主要版本升級期間可能發生的錯誤訊息,以及解決方法。
錯誤:資料庫:database_name。extension_violation:DEPRECATED,action_required:DELETE_EXTENSION
說明:AlloyDB 偵測到已淘汰的擴充功能。錯誤會指出哪些擴充功能導致錯誤:
database_name. extension_violation: DEPRECATED_EXTENSION, action_required: DELETE_EXTENSION. Query format to delete the extensions: DROP EXTENSION {extension_name}; Violation list: [extensions]
建議修正方式:刪除擴充功能。刪除擴充功能的查詢格式為 DROP EXTENSION {extension_name};。
錯誤:資料庫:database_name。extension_violation:INVALID_EXTENSION_VERSION,action_required:UPGRADE_EXTENSION
說明:AlloyDB 偵測到無效的擴充功能版本。
建議修正方式:升級擴充功能。升級擴充功能的查詢格式為 ALTER EXTENSION {extension_name} UPDATE TO {target_version};。
錯誤:資料庫:database_name 含有 pg_largeobject
說明:AlloyDB 偵測到pg_largeobject。
建議修正方式:先移除 pg_largeobject,再升級 AlloyDB 叢集。
ERROR: out of shared memory
說明:如果執行個體的共用記憶體不足,可能會顯示這則錯誤訊息。如果資料表超過 10,000 個,就比較容易發生這項錯誤。
建議修正方式:開始升級前,請將 max_locks_per_transaction 旗標的值設為執行個體中資料表數量的兩倍左右。變更這個旗標的值時,執行個體會重新啟動。
錯誤:連線數量不足
說明:如果執行個體的連線容量不足,可能會顯示這則錯誤訊息。
建議修正方式:建議您根據執行個體中的資料庫數量,提高 max_connections 旗標值。變更這個旗標的值時,執行個體會重新啟動。
升級前檢查失敗
說明:升級 AlloyDB 叢集時,可能會因升級前檢查而失敗。違規事項的詳細資料會以 logs_url 的形式,顯示在 API 回應中。系統會將您導向 Google Cloud 控制台頁面,其中會顯示記錄。
建議修正方式:根據錯誤訊息,查看本文先前列出的其他錯誤,解決特定問題。
後續步驟
- 排解就地升級主要版本的問題。
- 瞭解如何就地升級資料庫主要版本。