SQL memory pressure scripts

 

-- Breaks down buffers by object (table, index) in the buffer cache  

    SELECT  OBJECT_NAME(p.object_id)  AS   'ObjectName' , p.object_id,   
    p.index_id, COUNT (*)/128  AS   'buffer size(MB)' ,   COUNT (*)  AS   'buffer_count'    
    FROM  sys.allocation_units  AS  a  
    INNER   JOIN  sys.dm_os_buffer_descriptors  AS  b  
    ON  a.allocation_unit_id = b.allocation_unit_id  
    INNER   JOIN  sys.partitions  AS  p  
    ON  a.container_id = p.hobt_id  
    WHERE  b.database_id = db_id()  
    GROUP   BY  p.object_id, p.index_id  

    ORDER   BY  buffer_count  DESC  

 

 

-- Get Top 25 executed SP's ordered by logical reads (memory pressure)  
    SELECT   TOP  25 qt.text  AS  'SP  Name ', total_logical_reads,   
    qs.execution_count AS  'Execution  Count ', total_logical_reads/qs.execution_count  AS  'AvgLogicalReads ',
    qs.execution_count/DATEDIFF(Second, qs.creation_time, GetDate()) AS ' Calls/ Second ',   
    qs.total_worker_time/qs.execution_count AS  'AvgWorkerTime ',
    qs.total_worker_time AS ' TotalWorkerTime ',
    qs.total_elapsed_time/qs.execution_count AS ' AvgElapsedTime ',
    qs.total_logical_writes,
    qs.max_logical_reads, qs.max_logical_writes, qs.total_physical_reads, 
    DATEDIFF(Minute, qs.creation_time, GetDate()) AS ' Age  in  Cache'  
    FROM  sys.dm_exec_query_stats  AS  qs  
    CROSS  APPLY sys.dm_exec_sql_text(qs.sql_handle)  AS  qt  
    WHERE  qt.dbid = db_id()  -- Filter by current database  
    ORDER   BY  total_logical_reads  DESC  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值