簡體   English   中英

RDS postgres 從 9.4 升級到 9.5,CPU 一直卡在 100% 幾個小時

[英]Upgraded RDS postgres from 9.4 to 9.5, CPU has been stuck at 100% for hours

將我的 RDS postgres 從 9.4 升級到 9.5 后,我看到 CPU 現在保持在 100% 左右的時間超過 8 小時。

我看到相同的數據庫查詢,在我手動取消它們之前,過去需要 < 1 秒運行 10 分鍾以上。

我不是在處理大型數據庫。 大多數被查詢的表<10000行

CPU使用率

與正常情況相比,我的讀取 IOPS 和寫入 IOPS 非常低(主要是因為站點關閉並且我關閉了非關鍵服務。

我一直在觀察pg_stat_activity的活動查詢,並沒有看到任何異常(除了過去需要 < 1 秒的長時間運行的查詢)。

我確實從 9.5 升級到 9.6 只是為了它,但它沒有幫助。

調試這個有什么建議嗎? 我很難過,許多網站都關閉了。

ANALYZE VERBOSE;

我遇到了一個非常相似的問題,一直到 postgres 的版本來回移動,並且能夠通過運行ANALYZE來解決它。

問題是 postgres 生成的查詢計划針對以前版本的 postgres 進行了優化,當您執行 RDS 更新時,它不會隱式地重新生成這些計划,這需要手動完成(我確定 AWS 不這樣做是有原因的)不要手動執行此操作,但我真的不知道為什么)。

就我而言,我看到大約一周的 CPU 使用率極高,就像你的情況一樣,然后在運行 ANALYZE 后,我的 CPU 回落到以前的基線。 正如您在下圖中看到的,升級(在我的例子中是 9.4 - 9.5)是在 11/27 運行的,分析查詢是在 12/02 運行的。

(VERBOSE 不是絕對必要的,但能夠觀察命令的進度很有用)

1 周的 postgres cpu 使用。

調試 RDS 很困難,因為您無法檢查主機操作系統。 如果可能,您可以拍攝每個數據庫的快照,然后從版本 9.5 和 9.6 上的快照創建 2 個全新的 RDS 實例。 這將幫助您了解這是否是以下方面的問題:

  1. 升級過程(如果新實例有效)
  2. 您的應用程序在 9.6 上運行(如果 9.6 上的 CPU 較高,但 9.5 實例有效)
  3. 別的東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM