SQLSERVER当前的连接数不多,为什么CPU的使用率很高?
这其实有很多原因的,计算量很大,SQL语句的嫌疑最大,于是就想办法怎么找出SQL,正在运行的系统,一般不建议用Profile跟踪,那么可以通过系统表和函数把他找出来
查询当前系统的连接信息,可以用SQL Server数据库本身提供了一个DMV
SELECT * FROM sys.dm_exec_sessions WHERE host_name IS NOT NULL
第一步:先查询系统表SYSPROCESSES,找出CPU量使用最大的,找出它的sql_handle
SELECT spid,
kpid,
waittype,
waittime,
lastwaittype,
cpu,
dbid,
sql_handle FROM [Master].[dbo].[SYSPROCESSES]
where dbid=DB_ID('数据库名