SQL Server 性能优化之RML Utilities

数据库为sqlserver要做性能测试,在网上找了很多都是介绍RML Utilities的,当时在网上看了些别人的测试结果,感觉这个工具很神奇,于是暗下决心一定要把该工具掌握,接下来的时间就介绍一下我的rml utilities学习之路吧。

第一步:学习sql server自动的工具profile,这个工具很强大,它能够记录某一段时间内,该服务器所执行的sql语句的详细信息,当然了这个时间段可以根据你的需求自己选择。一般设置时间为2个小时,或者更多。当然采取的样本越多所得出的结果就更加准确,但是分析的速度会受到一定的影响这个可以自己来把握。

第二步:将profile所获取的数据,保存到本地并命名.trc的文件。

第三步:安装RMLSetup_X86.msi,有时候也需要安装ReportViewer.exe,如果条件允许就在安装sql server的机器上进行安装。这样比较容易操作和获取和分析。因为在使用RML分析的时候需要连数据库进行操作。

第四步:将步骤1跟踪的trc文件在本机的1.trc,输入cmd,进入rml安装路径,ReadTrace.exe –I"C:\1.trace.trc" –o"c:\temp\breakout"即可出现神奇的分析结果和图片;

第五步:按执行耗费cpu时间排序并可以得到此时间段内的 cpu执行最大时间语句

这样影响性能的语句基本找出来了,接下来的就是优化部分了。

补充:

1.trace文件也可以运用于数据库引擎顾问优化

 2.RML分析时是在本地生成了一个数据库,默认是PerfAnalysis,并将trace文件的数据标准化之后导入数据库,为报表展示提供数据

也可以本机连接至PerfAnalysis库,运用存储过程进行分析:

时间: 2024-10-12 18:03:38

SQL Server 性能优化之RML Utilities的相关文章

Sql Server 性能优化之包含列

Sql Server 性能优化之包含列 导读:数据数优化查询一直是个比较热门的话题,小生在这方面也只能算是个入门生.今 天我们就讲下数据库包含列这个一项的作用及带来的优化效果 引用下MSDN里面的一段解释: 当查询中的所有列都作为键列或非键列包含在索引中时,带有包含性非键列的索引可以显 著提高查询性能. 这样可以实现性能提升,因为查询优化器可以在索引中找到所有列值:不 访问表或聚集索引数据,从而减少磁盘 I/O 操作 上面这一段什么意思呢? 意思就是说设置好包含列,能提高查询性能,减少IO输出.

SQL Server 性能优化(一)——简介

原文:SQL Server 性能优化(一)--简介 一.性能优化的理由: 听起来有点多余,但是还是详细说一下: 1.节省成本:这里的成本不一定是钱,但是基本上可以变相认为是节省钱.性能上去了,本来要投入的硬件就可以减缓投入,从另外一个角度看来它就是节省了钱. 2.增加效率:对于客户来说,性能上去了,他们的工作效率也高了. 3.降低挫折感:性能底下,客户抱怨,无疑是对自己心灵上的打击. 二.性能误区: 性能误区 误区 现实 如果处理器使用率很高,那么需要添加更快的处理器 某一部分导致了性能问题 8

大话SQL Server性能优化(MSSQL高并发、性能调控、实践)

大话SQL Server性能优化(MSSQL高并发.性能调控.实践)网盘地址:https://pan.baidu.com/s/1KxdfcQD0XGD3M2ja_Y7UWQ 提取码:435v备用地址(腾讯微云):https://share.weiyun.com/5dTuZJ9 密码:xhmge4 本课程源于一家国内较知名的ERP厂商的一款产品出现性能问题后通过咨询服务解决了性能问题,然后根据自身多年技术培训.项目开发.产品研发与运维管理.软件公司内部咨询等经验,整理了在SQL Server 20

【SQL Server性能优化】运用SQL Server的全文检索来提高模糊匹配的效率

原文:[SQL Server性能优化]运用SQL Server的全文检索来提高模糊匹配的效率 今天去面试,这个公司的业务需要模糊查询数据,之前他们通过mongodb来存储数据,但他们说会有丢数据的问题,我从业务上了解到,显然对他们公司而言,丢数是绝对不能允许的. 另外,他们说之前也用过SQL Server的全文检索,但速度不够快,不如用mongodb快,当然我不太清楚他们所谓快的具体定义,比如查询只需要1秒,还是1分钟.他们的系统现在采用的是SQL Server,通过复制来实现高可用性,因为他们

SQL Server性能优化

源代码文件 1,什么是性能问题? 现有资源没有达到最大吞吐量的前提下,系统不能满足合理的预期表现,则可以定义为有性能问题.性能指标包括:响应时间,吞吐量,可扩展性. 2,初探优化 2.1优化论 一般遇到2种性能问题: 1),某个功能很慢,或者突然变慢,比如某个存储过程.查询等. 2),整个系统很慢. 第一种情况下,对象比较明确,所以处理起来相对轻松.大部分情况下,只需要研究执行计划就可以解决绝大部分问题.通过改变查询.调整表结构(索引等).就可以起到明显的效果. 第二种情况下,对象不明确,首先需

SQL SERVER性能优化综述

一个系统的性能的提高,不单单是试运行或者维护阶段的性能调优的任务,也不单单是开发阶段的事情,而是在整个软件生命周期都需要注意,进行有效工作才能达到的.所以我希望按照软件生命周期的不同阶段来总结数据库性能优化相关的注意事项. 一.分析阶段 一般来说,在系统分析阶段往往有太多需要关注的地方,系统各种功能性.可用性.可靠性.安全性需求往往吸引了我们大部分的注意力,但是,我们必须注意,性能是很重要的非功能性需求,必须根据系统的特点确定其实时性需求.响应时间的需求.硬件的配置等.最好能有各种需求的量化的指

Sql Server性能优化辅助指标SET STATISTICS TIME ON和SET STATISTICS IO ON

1.前言 对于优化SQL语句或存储过程,以前主要是用如下语句来判断具体执行时间,但是SQL环境是复杂多变的,下面语句并不能精准判断性能是否提高:如果需要精确知道CPU.IO等信息,就无能为力了. PRINT convert(varchar(30),getdate(),121) select * from Sales.SalesOrderDetail where SalesOrderID > 64185 PRINT convert(varchar(30),getdate(),121) 这时候如果使

SQL Server 性能优化3 该指数(Index)保养

前言 之前的一篇文章介绍了索引来提高数据库的查询性能,这其实仅仅是个开始.也许假设缺乏适当的保养,索引你以前建立的,甚至成为拖累,成为帮凶下降数据库的性能. 寻找碎片 消除碎片索引维护可能是最常规的任务,,议是当碎片等级为 5% - 30% 之间时採用 REORGANIZE 来"重整"索引.假设达到 30% 以上则使用 REBUILD 来"重建"索引.决定採用何种手段和操作时机可能需要考虑很多的因素,下面4条是你必需要考虑的: 备份的计划 server的负载 磁盘剩

SQL Server性能优化(3)使用SQL Server Profiler查询性能瓶颈

关于SQL Server Profiler的使用,网上已经有很多教程,比如这一篇文章:SQL Server Profiler:使用方法和指标说明.微软官方文档:https://msdn.microsoft.com/zh-cn/library/ms179428(v=sql.105).aspx有更详细的介绍. 经过使用Profiler进行监视,得到监视结果. ==================================以下是和文章标题无关的内容,举例说明优化语句===============