来自于:百度百科
SQL Server Profiler是一个功能丰富的界面,用于创建和管理跟踪,并分析和重播跟踪结果。它的作用有很多,我们这里主要介绍通过捕获ERP系统中的事件来解决SQL Server中的问题,对我们的测试工作和问题的解决都很有帮助。

(一)跟踪的建立与介绍:

  1. 1 打开SQL Server Management Studio,选择工具->SQL Server Profiler,或者直接从路径:开始/程序/Microsoft SQL Server 2008 R2 /性能工具/SQL Server Profiler。
    SQL Server Profiler查询跟踪的简单使用 - 图1
  2. 2 连接对应的数据库服务器。
    SQL Server Profiler查询跟踪的简单使用 - 图2
  3. 3 连接数据库后,直接打开跟踪新增界面,或者在路径:文件->新建跟踪下新增跟踪,连接数据库。
    如下图页面,常规页可以不用管,直接界面默认的就可以,点击事件选择页,显示所有事件和显示所有列的复选框打上勾。
    SQL Server Profiler查询跟踪的简单使用 - 图3
  4. 4 选择事件,将需要显示的列打上勾,这样才会在跟踪的时候,显示出这些列;
    SQL Server Profiler查询跟踪的简单使用 - 图4
  5. 5 由于服务器上的数据库比较多,所以跟踪的时候要过滤掉一些,只看当前用户需要查看的数据库,这就用到列筛选器功能,点击上图中的“列筛选器”,选择要做设置的列,输入条件,
    如下图,只要查看数据库ID为6的数据库,DatabaseID是每个数据库的唯一标识,可用语句select DB_ID(‘AIO5_Test’)查询得到,当然也可以过滤DatabaseName列。其它需要请自行设置。
    SQL Server Profiler查询跟踪的简单使用 - 图5
    SQL Server Profiler查询跟踪的简单使用 - 图6

  6. 6 事件的选择与取消,右击需要选择或取消选择的事件,点击取消选择事件类别,会将所属事件全部取消,也可以展开,单个勾选;
    SQL Server Profiler查询跟踪的简单使用 - 图7

  7. 7 存模板,可以将我们设置好的跟踪作为自己的模板,这样在下次使用的时候就不需要重复设置,以上步骤都设置好后,点击运行,然后点击文件->另存为->跟踪模板;
    SQL Server Profiler查询跟踪的简单使用 - 图8
  8. 8 取模板名称:
    SQL Server Profiler查询跟踪的简单使用 - 图9
  9. 9 下次打开,直接选择我们保存的跟踪模板即可。
    SQL Server Profiler查询跟踪的简单使用 - 图10
    END

    (二)跟踪的运行示例:

  10. 1 ERP中执行EV不成功。
    SQL Server Profiler查询跟踪的简单使用 - 图11

  11. 2 查看对应的EV,也没什么异常。
    SQL Server Profiler查询跟踪的简单使用 - 图12
  12. 3 跟踪运行后,找到对应的EV执行的语句,由跟踪出的查询可以看出,该EV的DocEntry没有获取到值,导致EV运行失败,而LineNum获取到了值,由此猜测是否由于控件设置中没有将DocEntry字段开出。
    SQL Server Profiler查询跟踪的简单使用 - 图13
  13. 4 生成控件设置,开出DocEntry字段。
    SQL Server Profiler查询跟踪的简单使用 - 图14
  14. 5 再次执行EV,成功注销行。
    SQL Server Profiler查询跟踪的简单使用 - 图15
  15. 6 再次查看跟踪结果,DocEntry获取到了值。
    SQL Server Profiler查询跟踪的简单使用 - 图16

    注意事项

  • 列筛选器 设置时, Duration 也是常用的项目,比如设置“大于 1000ms “,用于跟踪执行时间大于 1000ms 的查询,为优化系统提供分析数据。