这个SQL性能优化神器,你用过吗?

这个SQL性能优化神器,你用过吗?_第1张图片

作者:丶平凡世界

来源:SQL数据库开发

 

今天要说的这个优化神器就是SQL Server管理工具自带的Profiler,它到底神在哪里呢?

SQL Server Profiler是什么

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

SQL Server Profiler的使用

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

第一步

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

这个SQL性能优化神器,你用过吗?_第2张图片

图1 启动SQL Server Profiler

第二步

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

这个SQL性能优化神器,你用过吗?_第3张图片

图2 连接到被跟踪数据库

第三步

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

这个SQL性能优化神器,你用过吗?_第4张图片

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

第四步

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

这个SQL性能优化神器,你用过吗?_第5张图片

图4 事件选择设置页面

第五步 

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

这个SQL性能优化神器,你用过吗?_第6张图片

图5 勾选DatabaseName选项

第六步

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

这个SQL性能优化神器,你用过吗?_第7张图片

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

第七步

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

这个SQL性能优化神器,你用过吗?_第8张图片

图7 输入被跟踪的TextData

第八步

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

这个SQL性能优化神器,你用过吗?_第9张图片

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

第九步

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

这个SQL性能优化神器,你用过吗?_第10张图片

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

第十步

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

这个SQL性能优化神器,你用过吗?_第11张图片

图10 保存跟踪文件

第十一步

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

这个SQL性能优化神器,你用过吗?_第12张图片

图11 开启引擎优化顾问

第十二步

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

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

如图12:

这个SQL性能优化神器,你用过吗?_第13张图片

图12 设置引擎优化界面

第十三步

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

这个SQL性能优化神器,你用过吗?_第14张图片

图13 开始分析被跟踪文件

第十四步

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

这个SQL性能优化神器,你用过吗?_第15张图片

图14 获取优化建议脚本

第十五步

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

这个SQL性能优化神器,你用过吗?_第16张图片

图15 自动执行优化建议

以上就是SQL Server Profiler的基本使用操作,还有很多其他用处,小伙伴们可以慢慢探索。等你用久了,你会发现这绝对是一个神器!

 

你可能感兴趣的:(这个SQL性能优化神器,你用过吗?)