Performance Statistics 事件类

更新日期: 2006 年 12 月 12 日

Performance Statistics 事件类可用于监视正在执行的查询的性能。四个事件子类分别表示系统内查询的生存期内的一个事件。使用这些事件子类的组合和关联的 sys.dm_exec_query_stats 动态管理视图 (DMV),可以重新构建任何指定查询的性能历史记录。

Performance Statistics 事件类的数据列

下面的表说明与下列每个事件子类关联的事件类数据列:EventSubClass 0EventSubClass 1EventSubClass 2EventSubClass 3

EventSubClass 0

数据列名称 数据类型 说明 列 ID 可筛选

BigintData1

bigint

NULL

52

BinaryData

image

NULL

2

DatabaseID

int

USE database 语句所指定的数据库的 ID;如果没有对给定的实例执行 USE database 语句,则为默认数据库的 ID。如果在跟踪中捕获到 ServerName 数据列并且服务器可用,则 SQL Server Profiler将显示数据库的名称。若要确定数据库的值,请使用 DB_ID 函数。

3

EventSequence

int

特定事件在请求中的顺序。

51

SessionLoginName

nvarchar

发起会话的用户的登录名。例如,如果您使用 Login1 连接到 SQL Server,再以 Login2 的身份执行语句,则 SessionLoginName 将显示 Login1,而 LoginName 将显示 Login2。此列将同时显示 SQL Server 登录名和 Windows 登录名。

64

EventSubClass

int

事件子类类型。

0 = 当前未放入缓存的新的批查询 SQL 文本。

下列 EventSubClass 类型是在即席批查询的跟踪中生成的。

对于有 n 次查询的即席批查询:

  • 1 个类型 0 的查询

21

IntegerData2

int

NULL

55

ObjectID

int

NULL

22

Offset

int

NULL

61

SPID

int

发生该事件的会话 ID。

12

SqlHandle

image

可通过 dm_exec_sql_text DMV 获取批查询 SQL 文本的 SQL 句柄。

63

StartTime

datetime

该事件(如果存在)的启动时间。

14

TextData

ntext

批查询的 SQL 文本。

1

PlanHandle

Image

NULL

65

EventSubClass 1

数据列名称 数据类型 说明 列 ID 可筛选

BigintData1

bigint

重新编译此计划的累积次数。

52

BinaryData

image

已编译计划的二进制 XML。

2

DatabaseID

int

USE database 语句所指定的数据库的 ID;如果没有对给定的实例执行 USE database 语句,则为默认数据库的 ID。如果在跟踪中捕获到 ServerName 数据列并且服务器可用,则 SQL Server Profiler将显示数据库的名称。若要确定数据库的值,请使用 DB_ID 函数。

3

EventSequence

int

特定事件在请求中的顺序。

51

SessionLoginName

nvarchar

发起会话的用户的登录名。例如,如果您使用 Login1 连接到 SQL Server,再以 Login2 的身份执行语句,则 SessionLoginName 将显示 Login1,而 LoginName 将显示 Login2。此列将同时显示 SQL Server 登录名和 Windows 登录名。

64

EventSubClass

int

事件子类类型。

1 = 存储过程中的查询已编译。

下列 EventSubClass 类型是在存储过程的跟踪中生成的。

对于有 n 次查询的存储过程:

  • n 个类型 1 的查询

21

IntegerData2

int

存储过程内语句的结尾。

对于存储过程的结尾,此值为 -1。

55

ObjectID

int

系统分配的对象 ID。

22

Offset

int

语句在存储过程或批处理中的起始偏移量。

61

SPID

int

发生该事件的会话 ID。

12

SqlHandle

image

可通过 dm_exec_sql_text DMV 获取存储过程的 SQL 文本的 SQL 句柄。

63

StartTime

datetime

该事件(如果存在)的启动时间。

14

TextData

ntext

NULL

1

PlanHandle

image

存储过程的编译计划的计划句柄。可使用该句柄通过 dm_exec_query_plan DMV 来获取 XML 计划。

65

ObjectType

int

表示事件中涉及的对象类型的值。

8272 = 存储过程

28

BigintData2

bigint

在编译过程中使用的总内存 (KB)。

53

CPU

int

编译过程中使用的总 CPU 时间(毫秒)。

18

Duration

int

编译过程中所用的总时间(毫秒)。

13

IntegerData

int

编译计划的大小 (KB)。

25

EventSubClass 2

数据列名称 数据类型 说明 列 ID 可筛选

BigintData1

bigint

重新编译此计划的累积次数。

52

BinaryData

image

已编译计划的二进制 XML。

2

DatabaseID

int

USE database 语句所指定的数据库的 ID;如果没有对给定的实例执行 USE database 语句,则为默认数据库的 ID。如果在跟踪中捕获到 ServerName 数据列并且服务器可用,则 SQL Server Profiler将显示数据库的名称。若要确定数据库的值,请使用 DB_ID 函数。

3

EventSequence

int

特定事件在请求中的顺序。

51

SessionLoginName

nvarchar

发起会话的用户的登录名。例如,如果您使用 Login1 连接到 SQL Server,再以 Login2 的身份执行语句,则 SessionLoginName 将显示 Login1,而 LoginName 将显示 Login2。此列将同时显示 SQL Server 登录名和 Windows 登录名。

64

EventSubClass

int

事件子类类型。

2 = 临时 SQL 语句中的查询已编译。

下列 EventSubClass 类型是在即席批查询的跟踪中生成的。

对于有 n 次查询的即席批查询:

  • n 个类型 2 的查询

21

IntegerData2

int

批查询内语句的结尾。

对于批查询的结尾,此值为 -1。

55

ObjectID

int

不适用

22

Offset

int

批查询中的语句的起始偏移量。

对于批查询的开始,此值为 0。

61

SPID

int

发生该事件的会话 ID。

12

SqlHandle

image

SQL 句柄。可使用该句柄通过 dm_exec_sql_text DMV 来获取批查询的 SQL 文本。

63

StartTime

datetime

该事件(如果存在)的启动时间。

14

TextData

ntext

NULL

1

PlanHandle

Image

批查询的编译计划的计划句柄。可使用该句柄通过 dm_exec_query_plan DMV 来获取批查询 XML 计划。

65

BigintData2

Bigint

在编译过程中使用的总内存 (KB)。

53

CPU

Int

编译过程中所用的总 CPU 时间(毫秒)。

18

Duration

int

编译过程中所用的总时间(毫秒)。

13

IntegerData

Int

编译计划的大小 (KB)。

25

EventSubClass 3

数据列名称 数据类型 说明 列 ID 可筛选

BigintData1

bigint

重新编译此计划的累积次数。

52

BinaryData

image

NULL

2

DatabaseID

int

USE database 语句所指定的数据库的 ID;如果没有对给定的实例执行 USE database 语句,则为默认数据库的 ID。如果在跟踪中捕获到 ServerName 数据列并且服务器可用,则 SQL Server Profiler将显示数据库的名称。若要确定数据库的值,请使用 DB_ID 函数。

3

EventSequence

int

特定事件在请求中的顺序。

51

SessionLoginName

nvarchar

发起会话的用户的登录名。例如,如果您使用 Login1 连接到 SQL Server,再以 Login2 的身份执行语句,则 SessionLoginName 将显示 Login1,而 LoginName 将显示 Login2。此列将同时显示 SQL Server 登录名和 Windows 登录名。

64

EventSubClass

int

事件子类类型。

3 = 保存在缓存中的某一查询已被破坏,与此计划相关的历史性能数据也将被破坏。

下列 EventSubClass 类型是在跟踪中生成的。

对于有 n 次查询的即席批查询:

  • 1 个类型 3 的查询(当从缓存中刷新查询时)

对于有 n 次查询的存储过程:

  • 1 个类型 3 的查询(当从缓存中刷新查询时)。

21

IntegerData2

int

存储过程内或批处理内的语句结束。

对于存储过程或批处理的结尾,此值为 -1。

55

ObjectID

int

NULL

22

Offset

int

语句在存储过程或批处理中的起始偏移量。

对于存储过程或批查询的开始,此值为 0。

61

SPID

int

发生该事件的会话 ID。

12

SqlHandle

image

可使用该句柄通过 dm_exec_sql_text DMV 来获取存储过程或批查询的 SQL 文本。

63

StartTime

datetime

该事件(如果存在)的启动时间。

14

TextData

ntext

QueryExecutionStats

1

PlanHandle

image

存储过程或批查询的编译计划的计划句柄。用于通过 dm_exec_query_plan DMV 来获取 XML 计划。

65

请参阅

参考

Showplan XML For Query Compile 事件类

其他资源

监视事件
sp_trace_setevent (Transact-SQL)

帮助和信息

获取 SQL Server 2005 帮助

更改历史记录

发布日期 历史记录

2006 年 12 月 12 日

新增内容:
  • 针对 Performance Statistics 事件类数据列中四个事件子类分别添加了一个表。
删除的内容:
  • 删除了说明 Performance Statistics 事件类数据列的表。