博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SqlServer优化:当数据量查询不是特别多,但数据库服务器的CPU资源一直100%时,如何优化?...
阅读量:6380 次
发布时间:2019-06-23

本文共 738 字,大约阅读时间需要 2 分钟。

最近和同事处理一个小程序,数据量不是特别大,某表的的数据记录:7000W条记录左右,但是从改别执行一次查询时,却发现查询速度也不快,而且最明显的问题就是CPU100%。

sql语句:

select gridid,lng,lat from finger_lib_server where lng>min_lng and lng
min_lat and lat

发现问题,使用下边的语句查看数据库是否有锁存在:

--查看被锁表:     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之间。

 

转载地址:http://pdqqa.baihongyu.com/

你可能感兴趣的文章
数据结构排序
查看>>
vi技巧: 宏的使用技巧(其中怎样保存宏)那部分比较重要
查看>>
angular2.0学习笔记1.开发环境搭建 (node.js和npm的安装)
查看>>
.bashrc和.bash_profile的区别
查看>>
让你的PHP程序真正的实现多线程(PHP多线程类)(转)
查看>>
Java JDBC 基础知识
查看>>
search-a-2d-matrix——二维矩阵找数
查看>>
lua基础【三】唯一数据结构table表
查看>>
Web应用安全审计工具WATOBO
查看>>
CSS3_animation笔记
查看>>
Android Google 地图 API for Android
查看>>
从 Zero 到 Hero ,一文掌握 Python--转
查看>>
【软件下载】整理一些外国的工具软件下载到网盘方便国内使用
查看>>
idea项目左边栏只能看到文件看不到项目结构
查看>>
idea如何编译maven项目
查看>>
在centos7下安装svn
查看>>
删除软链接
查看>>
windows7下MSN如何最小化到任务栏
查看>>
HDU-3016 Man Down 线段树
查看>>
初步认识注册表(待续)
查看>>