SQL Server Profiler 术语
若要使用 SQL Server Profiler,您需要了解描述该工具工作方式的术语。
事件
事件是在 SQL Server 数据库引擎 实例中生成的操作。示例包括:
- 登录连接、失败和断开。
- Transact-SQL SELECT、INSERT、UPDATE 和 DELETE 语句。
- 远程过程调用 (RPC) 批处理状态。
- 存储过程的开始或结束。
- 存储过程中的语句的开始或结束。
- SQL 批处理的开始或结束。
- 写入到 SQL Server 错误日志的错误。
- 在数据库对象上获取或释放的锁。
- 打开的游标。
- 安全权限检查。
由事件生成的所有数据显示在单个行中的跟踪内。该行与详细说明事件的数据列相交。
事件类
事件类是可跟踪的事件类型。事件类包含所有可由事件报告的数据。事件类示例如下所示:
- SQL:BatchCompleted
- Audit Login
- Audit Logout
- Lock:Acquired
- Lock:Released
事件类别
事件类别定义 SQL Server Profiler 中的事件的分组方法。例如,所有锁事件类都分组在 Locks 事件类别中。但是,事件类别仅存在于 SQL Server Profiler 中。该术语不反映引擎事件的分组方法。
数据列
数据列是在跟踪中捕获的事件类的属性。由于事件类决定了可收集的数据类型,因此并不是所有数据列都适用于所有事件类。例如,在捕获了 Lock:Acquired 事件类的跟踪中,BinaryData 数据列包含锁定的页 ID 或行的值,但 Integer Data 数据列不包含任何值,因为该数据列不适用于被捕获的事件类。有关默认数据列的详细信息,请参阅用数据列描述事件。
模板
模板定义跟踪的默认配置。具体地说,它包括您要使用 SQL Server Profiler 监视的事件类。例如,可以创建一个指定了要使用的事件、数据列和筛选器的模板。模板不会被执行,而是用 .tdf 扩展名保存为文件。保存后,模板就可以在启动基于此模板的跟踪时控制捕获的跟踪数据。
跟踪
跟踪基于选定的事件、数据列和筛选器捕获数据。例如,可创建跟踪来监视异常错误。为此,请选择 Exception 事件类以及 Error、State 和 Severity 数据列。需要收集这三列的数据,以使跟踪结果可提供有意义的数据。然后,可运行以此方式配置的跟踪,并可收集有关服务器中发生的任何 Exception 事件的数据。可以保存跟踪数据,也可以立刻将其用于分析。尽管某些事件(如 Exception 事件)永远不会被重播,但跟踪以后可以被重播。还可以将跟踪保存为模板,以便在将来生成类似的跟踪。
SQL Server 使用两种方法来跟踪 SQL Server 实例:可以使用 SQL Server Profiler 进行跟踪,也可以使用系统存储过程进行跟踪。
筛选器
当创建跟踪或模板时,可以定义筛选由事件收集的数据的准则。若要避免跟踪过大,可以筛选跟踪,以便只收集一部分事件数据。例如,可以在跟踪中将 Microsoft Windows 用户名限制为特定的用户,从而减少输出的数据。
如果没有设置筛选器,跟踪输出中将返回选定事件类的所有事件。