首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将RDS postgres从9.4升级到9.5,几个小时以来CPU一直处于100%的状态

将RDS postgres从9.4升级到9.5,几个小时以来CPU一直处于100%的状态
EN

Stack Overflow用户
提问于 2017-10-12 00:12:56
回答 2查看 1.2K关注 0票数 3

在将我的RDS postgres从9.4升级到9.5之后,我看到CPU保持在100%左右超过8个小时。

我看到了相同的数据库查询,在我手动取消它们之前,它们在10+分钟内运行不到1秒。

我不是在处理大型数据库。大多数被查询的表的行数都小于10000行

与正常情况相比,我的读取IOPS和写入IOPS非常低(主要是因为站点关闭,我关闭了非关键服务)。

我一直在关注pg_stat_activity中的活动查询,没有发现任何异常(除了过去耗时不到1秒的长时间运行的查询)。

我确实从9.5升级到了9.6,只是为了它的地狱,它没有任何帮助。

对调试有什么建议吗?我被难住了,很多网站都瘫痪了。

EN

回答 2

Stack Overflow用户

发布于 2019-12-04 18:16:23

代码语言:javascript
复制
ANALYZE VERBOSE;

我遇到了一个极其相似的问题,就连postgres的各个版本都被移来移去,只需运行ANALYZE就能解决这个问题。

问题是postgres生成的查询计划是针对postgres的前一个版本进行优化的,当你进行RDS更新时,它不会隐含地重新生成这些计划,这需要手动完成(我相信AWS不手动完成这一点是有原因的,但我真的不知道为什么)。

在我的例子中,我看到大约一周的CPU使用率非常高,就像您的例子一样,然后在运行ANALYZE之后,我的cpu下降到了它以前的基线。正如您在下图中所看到的,升级(在我的示例中,从9.4到9.5)是在11/27运行的,分析查询是在12/02运行的。

(详细信息并不是绝对必要的,但能够查看命令的进度是很有用的)

票数 5
EN

Stack Overflow用户

发布于 2017-10-12 01:01:30

调试RDS很困难,因为您无法检查主机操作系统。如果可能,您可以为每个数据库创建快照,然后从9.5和9.6版本的快照创建两个全新的RDS实例。这将帮助您了解这是否存在以下问题:

  1. 升级过程(如果新实例可以工作)
  2. 您的应用程序在9.6上运行(如果9.6上的高cpu,否则9.5实例works)
  3. Something。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46692986

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档