时间:2021-07-01 10:21:17 帮助过:20人阅读
发现问题,使用下边的语句查看数据库是否有锁存在:
--查看被锁表: select request_session_id as spid,OBJECT_NAME(resource_associated_entity_id) as tableName from sys.dm_tran_locks where resource_type=‘OBJECT‘ --spid 锁表进程 --tableName 被锁表名 -- 解锁: declare @spid int Set @spid = 57 --锁表进程 declare @sql varchar(1000) set @sql=‘kill ‘+cast(@spid as varchar) exec(@sql)
当执行查看被琐表的时候,一下子就发现了近100条锁都是指向表:finger_lib_server表。
于是,通过sqlserver的查询优化发现表finger_lib_server表上并没有针对上边的查询创建对应的索引:
创建索引后,发现不仅CPU占用不到30%,而且查询速度也基本在0~60ms之间。
SqlServer优化:当数据量查询不是特别多,但数据库服务器的CPU资源一直100%时,如何优化?
标签:http class 问题 resource images 被锁 技术 res arc