云数据库OceanBase集群CPU使用率过高的解决方法

更新时间:

问题描述

在阿里云云数据库OceanBase性能监控页面,节点和租户CPU使用率都比较高,且触发“OB节点CPU使用率”和“租户CPU负载告警”告警。

问题原因

导致CPU使用率高的常见原因包括:

  • 业务产生了大查询或热点数据。
  • 集群的资源规划比实际偏小、业务产生了意外热点场景。

解决方案

请执行以下操作,排查CPU使用率高的原因并进行相应的处理:

  1. 登录OceanBase 管理控制台,在集群列表中,选择集群名,进入集群工作台
  2. 单击租户管理,选择租户,进入租户工作台
  3. 租户工作台性能监控界面,查看CPU使用率的折线图,判断图中告警时间点的CPU使用率在较长时间内(1~7 天)是否突然增大。
    • 有,则为非正常负载。
    • 否,为正常负载。正常流量引起负载过高,建议对租户规格进行扩容,详情请参见租户相关操作
  4. 单击左侧导航栏的诊断,在TopSQL页签中,查看是否有CPU使用率过高的SQL。
    • 如有,可对该SQL进行优化。

    • 如无,则不为该原因。

  5. SlowSQL页签中,查看具体的诊断结果,分析是否可能导致CPU负载过高。如可能,请对该SQL进行优化。
  6. 针对第4步和第5步的问题SQL,在诊断页面的高级设置页签,使用限流功能。
    1. 打开限流开关。
    2. 设置单个OBServer执行指定SQL的并发个数。
      说明:绑定索引和限定并发数不能同时生效。
    3. 单击更新设置,您的设置将会实时生效。
      1

适用于

  • 云数据库OceanBase