SQL Server Profiler是什么

SQL Server Profiler是一个界面,用于创建和管理跟踪并分析和重播跟踪结果。 这些事件保存在一个跟踪文件中,稍后试图诊断问题时,可以对该文件进行分析或用它来重播一系列特定的步骤。同时也可以利用它来对跟着文件进行分析,分析完成后会给出优化建议。

SQL Server Profiler的使用

下面我将一步一步以图片+文字解说的方式告诉大家该如何使用它来进行跟踪和优化。

第一步

启动SSMS——>【工具】——>【SQL Server Profiler】,即可启动SQL Server Profiler,如图1:

图1 启动SQL Server Profiler

第二步

启动后会再次要求连接被跟踪的数据库,如图2:

图2 连接到被跟踪数据库

第三步

设置跟踪属性,根据界面提示填入相关信息,如图3:

图3 设置跟踪属性常规页面

第四步

设置【事件选择】内容,根据图4中的提示,勾选相关内容即可:

图4 事件选择设置页面

第五步

在【事件选择】页面继续勾选显示DatabaseName列,方便显示被跟踪数据库,按图5步骤中操作:

图5 勾选DatabaseName选项

第六步

按图6中步骤,先点击【列筛选器...】在弹出的页面中找到【DatabaseName】选项,然后输入指定数据库名称,这里我们输入AdventureWorks。这是小编本地数据库名称。

图6 输入被跟踪数据库名称

第七步

按图7中步骤,选中【TextData】的选项,输入select%,其意思是跟踪以select开头的查询语句,%为通配符。点击【确定】后会弹出一个提示框,点击【确定】即可。

图7 输入被跟踪的TextData

第八步

返回SSMS,选择AdventureWorks数据库,新建一个查询,点击【执行】。如图8:

图8 在被跟踪数据库中输入被跟踪的查询语句

第九步

返回SQL Server Profiler查看跟踪界面,如图9在跟踪页面上可以看到刚才执行的查询语句。

如图9 查看被跟踪的查询语句

第十步

将当前的跟踪文件另存为跟踪文件Test.trc,如图10:

图10 保存跟踪文件

第十一步

点击SQL Server Profiler菜单栏中的【工具】——>【数据库引擎优化顾问】开始对刚才的Test.trc文件进行分析,如图11:

图11 开启引擎优化顾问

第十二步

在弹出的页面中,我们开始设置优化顾问。

在【工作负荷】中找到刚保存的Test.trc文件
在选择要优化的数据库和表中,我们单独找到需要被分析的表Address
如图12:

图12 设置引擎优化界面

第十三步

设置完成后,点击【开始分析】即可,如图13:

图13 开始分析被跟踪文件

第十四步

等分析完成后,在索引建议一栏中的最后一列【定义】中会给出优化建议,这里点开,然后点【复制到剪贴板】即可获取优化建议脚本,返回SSMS粘贴后执行即可完成优化。如图14:

图14 获取优化建议脚本

第十五步

这一步是和第十四步功能类似,只是更加智能,由系统自动执行,无需复制粘贴执行脚本。点击数据引擎优化顾问的菜单栏的【操作】——>【应用建议...】,在弹出的对话框如图15,点击确定即可自动执行引擎顾问提供的优化建议。

图15 自动执行优化建议

以上就是SQL Server Profiler的基本使用操作,还有很多其他用处,小伙伴们可以慢慢探索。等你用久了,你会发现这绝对是一个神器!
-----------------------------------
著作权归作者所有:来自51CTO博客作者SQL数据库开发的原创作品,请联系作者获取转载授权,否则将追究法律责任
SQL Server性能优化工具Profiler
https://blog.51cto.com/u_13002900/5278343

SQL Server性能优化工具Profiler的更多相关文章

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

    原文:SQL Server 性能优化(一)--简介 一.性能优化的理由: 听起来有点多余,但是还是详细说一下: 1.节省成本:这里的成本不一定是钱,但是基本上可以变相认为是节省钱.性能上去了,本来要投 ...

  2. SQL Server 性能优化之——系统化方法提高性能

    SQL Server 性能优化之——系统化方法提高性能 阅读导航 1. 概述 2. 规范逻辑数据库设计 3. 使用高效索引设计 4. 使用高效的查询设计 5. 使用技术分析低性能 6. 总结 1. 概 ...

  3. SQL SERVER性能优化综述

    SQL SERVER性能优化综述 一个系统的性能的提高,不单单是试运行或者维护阶段的性能调优的任务,也不单单是开发阶段的事情,而是在整个软件生命周期都需要注意,进行有效工作才能达到的.所以我希望按照软 ...

  4. SQL Server 性能优化之RML Utilities:快速入门(Quick Start)(1)

      SQL Server 性能优化之RML Utilities:快速入门(Quick Start)(1) 安装Quick Start工具 RML(Replay Markup Language)是MS ...

  5. SQL Server性能优化与管理的艺术 附件下载地址

    首先感谢读者们对鄙人的支持,购买了<SQL Server性能优化与管理的艺术>,由于之前出版社的一些疏忽,附件没有上传成功,再次本人深表歉意. 请需要下载附件的读者从下面链接下载,谢谢: ...

  6. SQL Server性能优化(6)查询语句建议

    1. 如果对数据不是工业级的访问(允许脏读),在select里添加 with(nolock) ID FROM Measure_heat WITH (nolock) 2. 限制结果集的数据量,如使用TO ...

  7. 【SQL Server性能优化】删除大量数据的方法比较

    原文:[SQL Server性能优化]删除大量数据的方法比较 如果你要删除表中的大量数据,这个大量一般是指删除大于10%的记录,那么如何删除,效率才会比较高呢? 而如何删除才会对系统的影响相对较小呢? ...

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

    原文:[SQL Server性能优化]运用SQL Server的全文检索来提高模糊匹配的效率 今天去面试,这个公司的业务需要模糊查询数据,之前他们通过mongodb来存储数据,但他们说会有丢数据的问题 ...

  9. SQL Server 性能优化详解

    故事开篇:你和你的团队经过不懈努力,终于使网站成功上线,刚开始时,注册用户较少,网站性能表现不错,但随着注册用户的增多,访问速度开始变慢,一些用户开始发来邮件表示抗议,事情变得越来越糟,为了留住用户, ...

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

    关于SQL Server Profiler的使用,网上已经有很多教程,比如这一篇文章:SQL Server Profiler:使用方法和指标说明.微软官方文档:https://msdn.microso ...

随机推荐

  1. Integer使用==比较的问题

    Integer使用==比较的问题 new一个对象 public Integer(int value) { this.value = value; } 自动装箱 public static Intege ...

  2. net core 添加cors,解决跨域问题

    ConfigureServices //允许跨域 services.AddCors(options => { options.AddPolicy("any", builder ...

  3. Git Please commit your changes or stash them before you merge.

    本地分支和远程修改了同一个文件代码,pull远程分支的代码的时候会文件冲突 出现这个错误 Please commit your changes or stash them before you mer ...

  4. 【python学习】PyQt基础学习以及一个信息论与编码课设实例

    这学期的信息论与编码的课设需要用编程语言实现霍夫曼.费诺以及香农编码,要具备在windows下的可视化操作界面,因此就选用PyQt作为开发工具,本篇博客记录一下PyQt的基础以及课设的实例 参考: & ...

  5. s-hr实现单点登录,看我这份笔记就够了!!!

    https://pan.kingdee.com/s/MTA5ODk4NyxjNzk1来自:云之家企业云盘

  6. linux中进程和线程简单介绍

    进程和线程的简单知识 进程是用来申请内核资源的,只有资源到位,进程才会进行,进程包含线程,线程是进程内部的调度单位,所以在业内有这样一句话,进程是资源分配最基本单位,线程是系统调度的最基本的单位,进程 ...

  7. js 对象命名

    JS 标识符的命名规则,即变量的命名规则: 标识符只能由字母.数字.下划线和'$'组成 数字不可以作为标识符的首字符 对象属性的命名规则 通过[]操作符为对象添加属性时,属性名称可以是任何字符串(包括 ...

  8. JS中面向对象的多种继承方式

    JS本身是基于面向对象开发的编程语言,面向对象开发中最重要的一个概念就是类. 类具有三大特性:封装.继承.多态 封装:类也是个函数,函数的目的是把一个功能代码进行封装,以此实现"低耦合高内聚 ...

  9. 在Debian11上安装Openresty服务(Nginx+Lua)

    OpenResty 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库.第三方模块以及大多数的依赖项.用于方便地搭建能够处理超高并发.扩展性极高的动态 We ...

  10. Excel工具(批量生成txt)

    Sub txt() Dim i, j, arr(), brr(), myRow, myCol arr = Sheet1.UsedRange myRow = UBound(arr, 1) myCol = ...