微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

收藏的一个Sqlserver性能查询,包括查询CPU 网络等

declare @LgReads bigint
select @LgReads=cntr_value from master.dbo.sysperfinfo where counter_name='Page lookups/sec' 
if object_id(N'tempdb.dbo.#waits') is not null GOTO InsertTb 
if object_id(N'tempdb.dbo.#waits') is null GOTO CreateTb


CreateTb:
	create table #waits (type varchar(128),req bigint,waittime bigint,signal bigint) GOTO InsertTb
InsertTb:
	insert into #waits exec('dbcc sqlperf(waitstats)')
	--insert into WaitsLog (DT,cpu,Locks,Reads,Writes,Network,PhReads,PhWrites,LgReads)
		select 
		    getdate() AS DT,CAST(@@cpu_BUSY * CAST(@@TIMETICKS AS FLOAT) / 1000 AS BIGINT) as cpu,-- in milliseconds
			sum(convert(bigint,case when type like 'LCK%' 
			  then waittime else 0 end)) as Locks,sum(convert(bigint,case when type like 'LATCH%'  or type like 'PAGELATCH%' or type like 'PAGEIOLATCH%'
			  then waittime else 0 end)) as Reads,case when type like '%IO_COMPLETION%' or type='WRITELOG'
			  then waittime else 0 end)) as Writes,case when type in ('NETWORKIO','OLEDB')
			  then waittime else 0 end)) as Network,@@TOTAL_READ AS PhReads,@@TOTAL_WRITE AS PhWrites,ISNULL(@LgReads,0) AS LgReads
		from #waits

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐