mssql sqlserver cpu使用率过高异常的处理方法分享


摘要:
下文讲述当发现sqlserver服务器中cpu使用率异常时,我们可以采用下面的语句检测cpu使用率过高的语句,然后针对相关sql语句进行优化

例:
—获取cpu使用率过高的前80条语句,如下

SELECT TOP  88
total_worker_time AS [总耗时],
total_worker_time/execution_count AS [平均执行时间],
plan_handle as [句柄ID],
execution_count as [执行总计],
(SELECT SUBSTRING(text,statement_start_offset/2 + 1,
(CASE WHEN statement_end_offset = -1 THEN LEN(CONVERT(NVARCHAR(MAX),text))*2
ELSE statement_end_offset END - statement_start_offset)/2)
FROM sys.dm_exec_sql_text(sql_handle))AS [sql脚本]
FROM sys.dm_exec_query_stats
ORDER BY [平均执行时间] DESC