SQL SERVER Profile Trace与System Monitor关联

在SQL Server 2005之前,并没有可用的工具将SQL Trace事件数据与Windows System Performance(Perfmon)计数器数据相关联,这样有一个弊端,如果发现查询时间过长,需要分析当前系统资源使用的情况,那么就无法进行分析。在SQL Server 2005版本增加了这个新特征,在SQL Server Profiler可以将Microsoft Windows系统监视器计数器与SQL Server事件或SQL Server 2005 Analysis Services (SSAS)事件关联,Windows系统监视器将指定计数器的系统活动记录在性能日志中。

注意:在收集数据时,必须要求SQL Profiler与Windows计数器收集数据的时间戳是相同的,因为SQL Profiler是通过时间戳来同步数据的,如果时间戳不同,那么在导入性能数据时,会弹出错误的提示信息。

将跟踪与性能日志数据关联的步骤如下:

  1. 在SQL Server Profiler中,打开保存的跟踪文件或跟踪表,不能关联仍在收集事件数据的运行中的跟踪,为实现与系统监视器数据的准确关联,跟踪必须同时包含StartTime和EndTime数据列。进入SQL Server Profiler主界面,单击【文件】菜单,在弹出的下拉菜单中选择【打开】菜单项,在弹出的级联菜单中选择【跟踪文件】菜单项,如图所示。
    SQL SERVER Profile Trace与System Monitor关联

  2. 进入SQL Server Profiler主界面,单击【文件】菜单,在弹出的下拉菜单中选择【导入性能数据】菜单项,导入一个Windows计数器文件,如图所示。
    SQL SERVER Profile Trace与System Monitor关联

  3. 在“性能计数器限制”对话框中,选中与要显示在跟踪旁边的系统监视器对象和计数器相对应的复选框,单击【确定】按钮,如图所示。
    SQL SERVER Profile Trace与System Monitor关联

  4. 关联后,结果如图所示。
    SQL SERVER Profile Trace与System Monitor关联

  5. 在跟踪事件窗口中选择一个事件,或者使用方向键在跟踪事件窗口的几个相邻行中导航。“系统监视器数据”窗口中的红色竖线指明与所选跟踪事件关联的性能日志数据。

  6. 在系统监视器图形中单击一个相关点,选中时间最接近的相应跟踪行,若要扩大时间范围,请在系统监视器图形中按住并拖动鼠标指针。