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



sql|这个SQL性能优化神器,你用过吗?
本文插图
作者:丶平凡世界
来源:SQL数据库开发
今天要说的这个优化神器就是SQL Server管理工具自带的Profiler , 它到底神在哪里呢?
SQL Server Profiler是什么
SQL Server Profiler是一个界面 , 用于创建和管理跟踪并分析和重播跟踪结果 。这些事件保存在一个跟踪文件中 , 稍后试图诊断问题时 , 可以对该文件进行分析或用它来重播一系列特定的步骤 。 同时也可以利用它来对跟着文件进行分析 , 分析完成后会给出优化建议 。
SQL Server Profiler的使用
下面我将一步一步以图片+文字解说的方式告诉大家该如何使用它来进行跟踪和优化 。
第一步
启动SSMS——&gt【工具】——&gt【SQL Server Profiler】 , 即可启动SQL Server Profiler , 如图1:

sql|这个SQL性能优化神器,你用过吗?
本文插图
图1 启动SQL Server Profiler
第二步
启动后会再次要求连接被跟踪的数据库 , 如图2:

sql|这个SQL性能优化神器,你用过吗?
本文插图
图2 连接到被跟踪数据库
第三步
设置跟踪属性 , 根据界面提示填入相关信息 , 如图3:

sql|这个SQL性能优化神器,你用过吗?
本文插图
图3 设置跟踪属性常规页面
第四步
设置【事件选择】内容 , 根据图4中的提示 , 勾选相关内容即可:

sql|这个SQL性能优化神器,你用过吗?
本文插图
图4 事件选择设置页面
第五步
在【事件选择】页面继续勾选显示DatabaseName列 , 方便显示被跟踪数据库 , 按图5步骤中操作:

sql|这个SQL性能优化神器,你用过吗?
本文插图
图5 勾选DatabaseName选项
第六步
按图6中步骤 , 先点击【列筛选器...】在弹出的页面中找到【DatabaseName】选项 , 然后输入指定数据库名称 , 这里我们输入AdventureWorks 。 这是小编本地数据库名称 。

sql|这个SQL性能优化神器,你用过吗?
本文插图
图6 输入被跟踪数据库名称
第七步
按图7中步骤 , 选中【TextData】的选项 , 输入select% , 其意思是跟踪以select开头的查询语句 , %为通配符 。 点击【确定】后会弹出一个提示框 , 点击【确定】即可 。

sql|这个SQL性能优化神器,你用过吗?
本文插图
图7 输入被跟踪的TextData
第八步
返回SSMS , 选择AdventureWorks数据库 , 新建一个查询 , 点击【执行】 。 如图8:
图8 在被跟踪数据库中输入被跟踪的查询语句
第九步
返回SQL Server Profiler查看跟踪界面 , 如图9在跟踪页面上可以看到刚才执行的查询语句 。

sql|这个SQL性能优化神器,你用过吗?
本文插图
如图9 查看被跟踪的查询语句
第十步
将当前的跟踪文件另存为跟踪文件Test.trc , 如图10:

sql|这个SQL性能优化神器,你用过吗?
本文插图
图10 保存跟踪文件
第十一步
点击SQL Server Profiler菜单栏中的【工具】——&gt【数据库引擎优化顾问】开始对刚才的Test.trc文件进行分析 , 如图11: 分页标题

sql|这个SQL性能优化神器,你用过吗?
本文插图
图11 开启引擎优化顾问
第十二步
在弹出的页面中 , 我们开始设置优化顾问 。

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

sql|这个SQL性能优化神器,你用过吗?
本文插图
图12 设置引擎优化界面
第十三步
设置完成后 , 点击【开始分析】即可 , 如图13:

sql|这个SQL性能优化神器,你用过吗?
本文插图
图13 开始分析被跟踪文件
第十四步
等分析完成后 , 在索引建议一栏中的最后一列【定义】中会给出优化建议 , 这里点开 , 然后点【复制到剪贴板】即可获取优化建议脚本 , 返回SSMS粘贴后执行即可完成优化 。 如图14:

sql|这个SQL性能优化神器,你用过吗?
本文插图
图14 获取优化建议脚本
第十五步
这一步是和第十四步功能类似 , 只是更加智能 , 由系统自动执行 , 无需复制粘贴执行脚本 。 点击数据引擎优化顾问的菜单栏的【操作】——&gt【应用建议...】 , 在弹出的对话框如图15 , 点击确定即可自动执行引擎顾问提供的优化建议 。

sql|这个SQL性能优化神器,你用过吗?
本文插图
图15 自动执行优化建议
以上就是SQL Server Profiler的基本使用操作 , 还有很多其他用处 , 小伙伴们可以慢慢探索 。 等你用久了 , 你会发现这绝对是一个神器!
【来源:CDA数据分析师】
声明:转载此文是出于传递更多信息之目的 。 若有来源标注错误或侵犯了您的合法权益 , 请作者持权属证明与本网联系 , 我们将及时更正、删除 , 谢谢 。邮箱地址:newmedia@xxcb.cn
【sql|这个SQL性能优化神器,你用过吗?】