• [20200407] 数据库cpu百分百问题


    问题:

      数据库服务器cpu吃满

    troubleshooting过程:

      正常这台服务器的cpu是在20-50之前,今天基本在70-100之间这个是不正常的。

           可能问题:

      1.并行sql或者复杂sql,打开profile,发现有运行很慢的sql,但是没有cpu非常高的。

           2.是不是并发变高导致的,打开profmon,发现并发不是特别高

      3.查看io等其他指标,也没有发现问题。

           4.直接看session的情况,发现session等待RESOURCE_SEMAPHORE,也就是说执行计划在等待内存,导致sql运行很慢

    直接看上sql 看到底需要分配内存多的session,发现有个query,内存占用的比较多。

    SELECT mg.granted_memory_kb, mg.session_id, t.text, qp.query_plan
    FROM sys.dm_exec_query_memory_grants AS mg
    CROSS APPLY sys.dm_exec_sql_text(mg.sql_handle) AS t
    CROSS APPLY sys.dm_exec_query_plan(mg.plan_handle) AS qp
    ORDER BY 1 DESC
    

    解决方法:

           优化查到的sql,这里其实就只有一个sql 出问题,优化sql,创建了一个特定的index让它访问。  

           

  • 相关阅读:
    AESUtil_1
    ELK配置
    Centos7上安装docker
    Excel大批量数据导出
    Redis5.0.6安装完整步骤
    idea远程打断点
    [HNOI2016] 序列
    [TJOI2017] 异或和
    洛谷 P4933 大师
    洛谷 P1950 长方形_NOI导刊2009提高(2)
  • 原文地址:https://www.cnblogs.com/Amaranthus/p/12658823.html
Copyright © 2020-2023  润新知