PgSQL · 最佳实践 · CPU满问题处理

  1. 云栖社区>
  2. 阿里云数据库ApsaraDB>
  3. 博客>
  4. 正文

PgSQL · 最佳实践 · CPU满问题处理

db匠 2017-07-21 09:00:19 浏览1653
展开阅读全文

前言

在数据库运维当中,一个DBA比较常遇到又比较紧急的问题,就是突发的CPU满(CPU利用率达到100%),导致业务停滞。DBA不一定非常熟悉业务实现逻辑,也不能掌控来自应用的变更或负载变化情况。 所以,遇到CPU满,往往只能从后端数据库开始排查,追溯到具体SQL,最终定位到业务层。这里我们总结下这个问题具体的处理方法。

查看连接数变化

CPU利用率到达100%,首先怀疑,是不是业务高峰活跃连接陡增,而数据库预留的资源不足造成的结果。我们需要查看下,问题发生时,活跃的连接数是否比平时多很多。对于RDS for PG,数据库上的连接数变化,可以从控制台的监控信息中看到。而当前活跃的连接数可以直接连接数据库,使用下列查询语句得到:

select count( * ) from pg_stat_activity where state not

网友评论

登录后评论
0/500
评论
db匠
+ 关注
所属云栖号: 阿里云数据库ApsaraDB