我们正在使用MSSQL server 2008,我们的应用程序具有SQL查询,这些查询在行和页面级别锁定数据库。据说由于锁定,CPU命中率为100%。是否有一个程序或方法可以找出哪个MSSQL服务器实例消耗了多少CPU,以便我可以进一步缩小这个问题的范围?
答案 0 :(得分:1)
检查SQL SERVER上正在运行的查询及其状态和CPU时间。
SELECT sqltext.TEXT,
req.session_id,
req.status,
req.command,
req.cpu_time,
req.total_elapsed_time,
cn.*
FROM sys.dm_exec_requests req
CROSS APPLY sys.dm_exec_sql_text(sql_handle) AS sqltext
LEFT OUTER JOIN sys.dm_exec_sessions AS cn
ON req.session_id= cn.session_id
在每个实例上运行此操作,看看它是否有助于排除故障