如何测试sql服务器的性能测试,SQL执行效率和性能测试方法
对于做管理系统和分析系统的程序员,复杂SQL语句是不可避免的,面对海量数据,有时候经过优化的某一条语句,可以提高执行效率和整体运行性能。如何选择SQL语句,本文提供了两种方法,分别对多条SQL进行量化的分析。
在测试SQL性能的过程中。
一是通过设置STATISTICS查看执行SQL时的系统情况。选项有PROFILE,IO ,TIME。
SET STATISTICS PROFILE ON:显示分析、编译和执行查询所需的时间(以毫秒为单位)。
SET STATISTICS IO ON:报告与语句内引用的每个表的扫描数、逻辑读取数(在高速缓存中访问的页数)和物理读取数(访问磁盘的次数)有关的信息。
SET STATISTICS TIME ON:显示每个查询执行后的结果集,代表查询执行的配置文件。
实例如下:
SET STATISTICS PROFILE ON
SET STATISTICS IO ON
SET STATISTICS TIME ON
GO
--你的SQL脚本开始
select top 100 * from TBL_Cot_RecStaticList
--你的SQL脚本结束
GO
SET STATISTICS PROFILE OFF
SET STATISTICS IO OFF
SET STATISTICS TIME OFF
显示信息:
SQL Server 分析和编译时间:
CPU 时间 = 0 毫秒,占用时间 = 59 毫秒。
(100 行受影响)
表 'TBL_Cot_RecStaticList'。扫描计数 1,逻辑读取 14 次,物理读取 2 次,预读 992 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。
SQL Server 执行时间: CPU 时间 = 0 毫秒,占用时间 = 306 毫秒。
SQL Server 分析和编译时间: CPU 时间 = 0 毫秒,占用时间 = 1 毫秒。
SQL Server 执行时间: CPU 时间 = 0 毫秒,占用时间 = 1 毫秒。
SQL Server 执行时间: CPU 时间 = 0 毫秒,占用时间 = 1 毫秒。
另外,也可以通过手工添加语句,计算执行时间来查看执行语句花费了的时间,以判断该条SQL语句的效率如何:
declare @d datetime
set @d=getdate()
--你的SQL脚本开始
SELECT [TestCase] FROM [TestCaseSelect]
--你的SQL脚本结束
select [语句执行花费时间(毫秒)]=datediff(ms,@d,getdate())
二是通过SQL 2008的“查询”按钮下的“包括实际的执行计划”和“包括客户端统计信息”。
下面是我和经理写的两个例子的性能对比:
我的:
SQL Server 执行时间:
CPU 时间= 32 毫秒,占用时间= 762 毫秒。
CPU 时间= 16 毫秒,占用时间= 475 毫秒。
CPU 时间= 32 毫秒,占用时间= 671 毫秒。
CPU 时间= 31 毫秒,占用时间= 615 毫秒。
经理的:
SQL Server 执行时间:
CPU 时间= 16 毫秒,占用时间= 547 毫秒。
CPU 时间= 47 毫秒,占用时间= 491 毫秒。
CPU 时间= 32 毫秒,占用时间= 436 毫秒。
CPU 时间= 47 毫秒,占用时间= 416 毫秒。
PS:今天在做一道题目的时候,经理给出的一道难题,虽然做出来了,但是性能没有做到最优化。其中用到了三层嵌套。现在特别是要总结的:大表跟小表进行关联查询 时,涉及到嵌套查询,先查询小表,然后再联合大表。我是一开始让大小表进行关联,然后再嵌套。而经理写的是先让小表嵌套,最后在关联。这样,执行效率自然要比我高
SQL执行效率和性能测试方法总结
对于做管理系统和分析系统的程序员,复杂SQL语句是不可避免的,面对海量数据,有时候经过优化的某一条语句,可以提高执行效率和整体运行性能.如何选择SQL语句,本文提供了两种方法,分别对多条SQL进行量化 ...
[转]SQLServer SQL执行效率和性能测试方法总结
本文转自:http://www.zhixing123.cn/net/27495.html 对于做管理系统和分析系统的程序员,复杂SQL语句是不可避免的,面对海量数据,有时候经过优化的某一条语句,可以提 ...
SQl 执行效率总结
SQL执行效率总结 1.关于SQL查询效率,100w数据,查询只要1秒,与您分享: 机器情况 p4: 2.4 内存: 1 G os: windows 2003 数据库: ms sql server 2 ...
怎么优化JAVA程序的执行效率和性能?
现在java程序已经够快的了,不过有时写出了的程序效率就不怎么样,很多细节值得我们注意,比如使用StringBuffer或者StringBuilder来拼接或者操作字符串就比直接使用String效率高 ...
in和exists的区别与SQL执行效率
in和exists的区别与SQL执行效率最近很多论坛又开始讨论in和exists的区别与SQL执行效率的问题,本文特整理一些in和exists的区别与SQL执行效率分析 SQL中in可以分为三类: 1 ...
in和exists的区别与SQL执行效率分析
可总结为:当子查询表比主查询表大时,用Exists:当子查询表比主查询表小时,用in SQL中in可以分为三类: 1.形如select * from t1 where f1 in ('a','b'), ...
SQL执行效率总结
1.关于SQL查询效率,100w数据,查询只要1秒,与您分享: 机器情况 p4: 2.4 内存: 1 G os: windows 2003 数据库: ms sql server 2000 目的: 查询 ...
SQL执行效率2-执行计划
以下语句可以进行SQL 语句执行时间分析,两个Go之间就是SQL查询语句 use Work--数据库名 go set statistics profile on set statistics io o ...
提高SQL执行效率的16种方法
项目中优化sql语句执行效率的方法:1)尽量选择较小的列2)将where中用的比较频繁的字段建立索引3)select子句中避免使用'*'4)避免在索引列上使用计算.not in 和<> ...
随机推荐
[WPF]DataGridHyperlinkColumn网址过长TextTrimming无效
windows下的socket网络编程
windows下的socket网络编程 windows下的socket网络编程 clinet.c 客户端 server.c 服务器端 UDP通信的实现 代码如下 已经很久没有在windows下编程了, ...
Linux主流發行版本介紹
一.简介 而工欲善其事,必先利其器,Linux的世界相當廣大,除了最著名的Ubuntu以外還有不少發行版.然文人相輕,自古皆然,了解不同發行版的優勢不只嘴上攻防用的上,也是學Linux一個有趣的地方! ...
[转载]关于CSDN, cnblog, iteye和51cto四个博客网站的比较与分析
CSDN:http://blog.csdn.net/ cnblog: http://www.cnblogs.com/ iteye: http://www.iteye.com/blogs/ 51cto: ...
浅谈Javascript 数组与字典
Javascript 的数组Array,既是一个数组,也是一个字典(Dictionary). 先举例看看数组的用法. var a = new Array(); a[0] = "Acer&q ...
Android NFC标签 开发深度解析 触碰的艺术
有几天没有更新博客了,不过本篇却准备了许久,希望能带给每一位开发者最简单高效的学习方式.废话到此为止,下面开始正文. NFC(Near Field Communication,近场通信)是一种数据传输 ...
Windows Azure 社区新闻综述(#70 版)
欢迎查看最新版本的每周综述,其中包含有关云计算和 Windows Azure 的社区推动新闻.内容和对话. 以下是过去一周基于您的反馈汇集在一起的内容: 文章.视频和博客文章 · 如何选择 No ...
[Python]程序性能分析
有些脚本发现比预期要慢的多,就需要找到瓶颈,然后做相应的优化,参考A guide to analyzing Python performance,也可以说是翻译. 指标 运行时间 时间瓶颈 内存使用 ...
基于开发者中心DevOps流水线快速上云
导读:“DevOps”这个词现在很流行,它具体指的是什么呢?本文介绍了DevOps和开发者中心DevOps流水线,图文并茂,解答您的疑惑. 那么DevOps是什么?开发者中心
30 个java编程技巧
1.return 一个空的集合,而不是 null 如果一个程序返回一个没有任何值的集合,请确保一个空集合返回,而不是空元素.这样你就不用去写一大堆 ”if else” 判断null元素. Java 的 ...
如何测试sql服务器的性能测试,SQL执行效率和性能测试方法相关推荐
- sql 服务器 客户端配置文件,sql 服务器 客户端配置
sql 服务器 客户端配置 内容精选 换一换 在进行二次开发时,要准备的开发环境如表1所示.同时需要准备运行调测的Linux环境,用于验证应用程序运行正常.选择Windows开发环境下,安装Eclip ...
- 微软SQL服务器登录,Microsoft SQL Server 【Windows 身份验证】和 【sa】都无法登录的解决方案...
1.修改启动参数:打开[SQL Server 配置管理器(SQL Server Configuration Manager)]→右键[SQL Server(MSSQLSERVER)]属性→高级(Adv ...
- 处理器仿存带宽_linux服务器CPU内存硬盘读写带宽等性能测试方法
如何对一个VPS主机进行CPU内存,硬盘IO读写,带宽速度等项目测试,像UnixBench和压力测试则可以综合反映一个VPS的性能水平,方便大家对照参考. VPS性能测试:CPU内存,硬盘IO读写,带 ...
- SQL语句书可以提高执行效率的5种需要注意的书写方法
之前收集的一些资料仅供参考, 不一定完全正确... 有错误望指正 1.操作符号: NOT IN操作符 此操作是强列推荐不使用的,因为它不能应用表的索引.推荐方案:用NOT EXISTS 或(外连接+判 ...
- sql服务器显示error,SQL Server 出现Error: 1326错误(管理器无法连接远程数据库)问...
SQL Server 出现Error: 1326错误 我们在在使用SQL Server时都会遇到使用SQL Server Management Studio无法连接远程数据库实例的问题,错误描述信息摘 ...
- 如何修改sql服务器名,修改SQL Server数据库服务器名字
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 重新命名服务器的过程非常简单.你所需要做的就是给服务器改名,就像平时为Windows NT或Windows 2000 Server改名那 ...
- 修改sql服务器排序规则,SQL SERVER数据库服务器排序规则修改
SQL Server服务器修改排序规则的方法 操作及验证步骤: 1 登录数据库后,查看当前安装数据库默认排序规则的两种方式 方式一.使用SQL Server 2014 Management Studi ...
- sql服务器显示error,SQL server 2008 登陆服务器时提示错误233
SQL server 2008登录的时候提示错误233,具体内容如上图所示,这是什么问题呢?怎么解决这个问题呢? 小编整理了一下相关的信息,给各位朋友做个参考. 题一:已成功与服务器建立连接,但是在登 ...
- 在电脑上找不到sql服务器,win8系统安装sql server软件后找不到怎么办
现在很多用户安装win8操作系统,可能对新系统的操作界面和方式都不太熟悉,比如有位用户在win8系统安装sql server软件后,发现怎么也找不到sql server软件,找了很久还是一样情况,怎么 ...
最新文章
- ADT7410 ±0.5℃精度温度传感器
- 2012年度IT博客大赛50强报道:高俊峰
- linux 下访问mysql
- php中abs,php中的abs函数怎么用
- 随机显示个性签名代码
- 【§美女杨颖win7电脑主题下载§系统美化】
- android 获取手机的MAC地址
- PS改变证件照片背景颜色
- 新华DCS系统MODBUS通讯仿真测试方法介绍
- 单片机课设中期报告_基于单片机的火灾自动报警系统 中期报告
- Mex HDU - 4747(递推, 思维)
- SuperMap瓦片技术方案
- 基于负熵(fastICA)的盲源分离
- EBS提交取消请求、请求集程序fnd_request
- 江苏大学正版Windows和Office全家桶--UJS微软正版化服务平台
- Unity打包后窗口在PC端不按照设置的大小显示
- Android一点 play商店地区与语言设置
- 【安卓wechat微信导出聊天记录】
- android相机预览拍照功能实现
- linux服务被植入挖矿(2t3ik与ddgs)解决方式
热门文章
- java 取整数_java中的三种取整函数
- 汇编 - 3.1 - 用汇编语言写的源程序
- 中国古代兵器与兵书·百炼精刚
- c语言孪生素数对问题
- linux,windows下检测指定的IP地址是否可用或者检测IP地址冲突的3种方式(批处理程序,python程序,linux shell 批量ping)...
- 让element-ui的el-upload组件文件列表中文件图标自定义显示
- AppBarLayout 禁止滑动 以及 NestedScrollView setNestedScrollingEnabled
- oracle-12154,ORA-12154: TNS: 无法解析指定的连接标识符(原创)
- 自定义SpringBoot启动banner -- 佛祖保佑 永无BUG
- 要花不少钱。哦,这样才好玩。