代码改变世界

3.4 SQL Server Profiler

2018-07-06 10:28  笑一笑十年少!!!  阅读(245)  评论(0编辑  收藏  举报

3.4 SQL Server Profiler
对于数据库管理员和开发人员这类人来说,SQL Server Profiler绝对是一个必须的工 具。Profiler可以监控和记录SQL Server活动的几乎所有方面。它实际上是一个SQL跟踪 的图形化界面,SQL跟 踪 就 是 -个用来监视和记录服务器活动的存储过程和函数的集合。
要启动 SQL Server P rofiler,可以使用 SQL Server Management Studio 的 “工 具 ”菜 单 ,也
可 以 利 用 “所有程序” | Microsoft SQL Server 2008 | “性能工具”菜 单 。
3.4.1 SQL Server 跟踪
Profiler可以用来创建和査看SQL Server跟踪 。当创建一个新的跟踪时,Profiler会要 求指定将在哪台服务器上运行跟踪。记 住 Profiler仅 仅 是 SQL Trace的一个图形化界面,其 工作原理是在所连接的服务器上执行存储过程和函数。如果服务器太忙且接近全负荷运转,
在其上运行SQL跟踪可能会使其超负荷。第 10章将详细讨论Profiler和 SQL跟踪过程。
3 .4 .2 跟踪属性
创建-个新跟踪时,会 出 现 “跟踪属性”对话框(如图3-38所示)。“跟踪属性”对话框
有两个选项卡:“常规”选项卡和“事件选择”选项卡。如 果 在 “事件选择”选项卡中选择
了任意XML SHOWPLAN事件,•则会启用第3 个选项卡—— “事件提取设置”。

1. “常规”选项卡
“常规”选项卡可以设置跟踪的基本结构(如跟踪名称、跟踪模板、保存选项和跟踪停
止时间),并且显示了提供程序的名称和类型,因为SQL Server Profiler并不局限于数据引
擎。它还可以用来跟踪SQL Server Analysis Services。
• 使用模板一 该下拉菜单包含很多预设的跟踪模板。每个模板都是一个预定义的事
件和筛选器的集合,它们为特殊目的的SQL Server监控提供支持。在创建跟踪监 控 SQL Server时,这些模板姑一个很好的起点。您也可以创建自己的模板,而我 们也强烈建议您这样做。程序自带的模板很好,但是您需要的信息肯定与预设模
板提供的信息有所区别。为了避免重复创建同样的定制跟踪,可以创建并保存一
个模板来捕获感兴趣的信息。
• 保存到文件—— 选择这个复选框会显示一个对话框,提示为保存跟踪数据选择一个
文件位置。跟踪的默认文件名带有.trc扩展名。但是可以根据需要更改文件名。默 认的跟踪文件最大大小是5MB,但可以将这个值设置为任意大小。如果选择了“保
存到文件”选项,两个附加的选项则会被启用:“启用文件滚动更新”选项和“服
务器处理跟踪数据”选项。
• 启用文件滚动更新一 该选项会导致每次达到最大文件限制时就会创建一个新
文件。每个文件都和原文件同名,末尾会加上顺序数字进行区分。每个连续的文
件都和之前的文件链接在一起,所以可以按顺序打开每个文件,或者在一个跟踪
窗口中打开所有文件。
• 服务器处理跟踪数据一 该选项会导致运行跟踪的服务器也处理跟踪信息。默认
情况下是Profiler应用程序处理跟踪信息。在髙强度的操作中,如果由Profiler处 理数据,它可能会丢失一些事件,或者甚至不会响应。如果服务器处理跟踪数据,
就不会有事件丢失。然而,让一台服务器同时处理跟踪数据和运行跟踪会给其添
加额外的负荷,会对服务器的性能造成负面影响。
• 保存到表一 选 择 “保存到表”选项后,跟踪数据也可以保存至一个表而不是一个
文件。如果跟踪数据将由要求访问关系型数据的外部程序分析,这种功能将会十
分有用。其不利的一面在于大型的跟踪会生成大量的数据,而这些数据会被插入
到存储表中。这还会导致服务器性能问题,但可以通过将跟踪信息保存到另一服
务器上来减轻此问题。如果把跟踪数据保存到表,我们可以设置存储的最大行数。
• 启用跟踪停止时间一启用此选项并设置一个停止时间,就可以将跟踪配置为在启
动后自动在一个预定义的时间停止。
2. “事件选择”选项卡
“事件选择”选项卡可以选择跟踪哪些SQL Server事件(如图3-39所示)。事件被组织在 21个 SQL Server事件组中,总共有170个不同的SQL Server事件,外 加 10个用户定义事件。
此外还有11个 Analysis Services组,包含38个不同的事件。SQL Server联机从书上对每一
个组和事件都有详述。查找标题“SQL Server事件类参考”可以找到有关SQL Server事件的
信息,査 找 “Analysis Services事件类”可以找到有关Analysis Services事件的信息。

列 筛 选 器 —— “事 件 选 择 ”选 项 卡 中 还 有 筛 选 被 跟 踪 事 件 的 选 项 (如 图 3-40所 示 )。
筛 选 数 据 这 个 功 能 相 当 有 用 。 例 如 , 如 果 你 在 给 某 个 应 用 程 序 査 错 , 就 可 以 筛 选
出 仅 由 该 程 序 产 生 的 事 件 , 从 而 避 免 査 看 SQL Server和 其 他 应 用 程 序 生 成 的 所 有 事 件 。

组 织 列 —— 该 按 钮 可 以 用 来 放 置 最 感 兴 趣 的 跟 踪 列 ,以 便 在 查 看 跟 踪 时 很 容 易 看 到
它 们 。 由 于 会 有 大 量 的 数 据 返 回 , 因 此 您 最 感 兴 趣 的 列 可 能 会 移 到 屏 幕 左 边 。 而
“组 织 列 ” 按 钮 则 有 助 于 避 免 这 些 问 题 。

3. “事件提取设置”选项卡
从 Performance事件组中选择一个SHOWPLAN XML事件,就 可 以 启 用 “事件提取设 置”选项卡(如阁341所示)。该选项卡分为两个组框。第-个组框可以保存SHOWPLAN信息。
所 有 SHOWPLAN信息都可以保存至-个或多个可在SQL Server Management Studio中打开的
XML文件。它们在打开时会显示为图形化执行计划,第 10章对此会有详细介绍。第二个组框
用来保存图形化的死锁信息。由于SQLServer会自动检测并终结死锁,我们通常很难看到它们。 SQL Seiver Profiler可以追踪死锁,并使用图形方式显示导致死锁的一系列事件。第 10章将会介绍如何使用SQL Server Profiler来 收 集 相 关 的 SQL Server数 据 ,以及如 何使用配置文件跟踪来査错并优化SQL Server性能。