服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Sql Server - 请问在mssql“SQL事件探查器”里表格的标题,如CPU,Read,Write,Duration,SPID.........的解释

请问在mssql“SQL事件探查器”里表格的标题,如CPU,Read,Write,Duration,SPID.........的解释

2019-10-29 17:30mssql教程网 Sql Server

请问在mssql“SQL事件探查器”里表格的标题,如CPU,Read,Write,Duration,SPID.........的解释

SQL事件探查器数据列

SQL事件探查器使您得以在创建模板时选择数据列。这些数据列表现在运行跟踪时希望返回的信息。在SQL事件探查器中显示的数据可以按事件发生的顺序显示,也可以按一个数据列或数据列组合分组显示。

例如,若要识别执行时间最长的用户事件,请按DBUserName和Duration对事件进行分组。SQL事件探查器将显示每个事件的执行时间。该功能类似于Transact-SQL中的GROUPBY子句。有关更多信息,请参见GROUPBY。

说明不能按StartTime或EndTime数据列进行分组。

如果SQL事件探查器可以连接到捕获跟踪数据时所在的Microsoft®SQLServer™实例,则将尝试用数据库、对象和索引的名称分别填充DatabaseID、ObjectID和IndexID数据列。否则,将显示标识号(ID)。

下表描述默认情况下选定的SQL事件探查器数据列。

数据列列号描述

ApplicationName110创建与SQLServer实例的连接的客户端应用程序名。该列由应用程序传递的值填充,而不是由所显示的程序名填充。

BinaryData2与在跟踪中捕获的事件类相关的二进制值。

ClientProcessID19由主机计算机分配给进程的ID,在该进程中客户应用程序正在运行。如果客户端提供客户端进程ID,则填充此数据列。

ColumnPermissions44表明是否已设置了列权限。分析语句文本,以确定将哪些权限应用到了哪些列。

CPU18事件所使用的CPU时间总计(以毫秒为单位)。

DatabaseID13USEdatabase语句所指定的数据库ID,如果没有对给定实例发出过USEdatabase语句,则是默认数据库。如果在跟踪内捕获ServerName数据列且服务器可用,则SQL事件探查器将显示数据库名。通过使用DB_ID函数确定数据库的值。

DatabaseName35正在运行用户语句的数据库的名称。

DBUserName140客户端的SQLServer用户名。

Duration13事件所花费的时间总计(以毫秒为单位)。

EndTime15事件结束时的时间。启动事件的事件类(如SQL:BatchStarting或SP:Starting)的该列不填充。

Error31给定事件的错误号。通常是存储在sysmessages中的错误号。

EventClass127捕获的事件类类型。

EventSubClass121事件子类的类型,提供有关每个事件类的进一步信息。例如,ExecutionWarning事件类的事件子类值代表执行警告的类型:

1=查询等待。查询必须等待资源(如内存)才能执行。

2=查询超时。查询在等待执行所需的资源时超时。所有事件类的该数据列均不填充。

FileName36所修改的文件的逻辑名称。

Handle33ODBC、OLEDB或DB-Library所用的整数,用以协调服务器的执行。

HostName18正运行客户端的计算机名。如果客户端提供主机名,则填充此数据列。若要确定主机名,请使用HOST_NAME函数。

IndexID24受事件影响的对象上的索引ID。若要确定对象的索引ID,请使用sysindexes系统表的indid列。

IntegerData25与在跟踪中捕获的事件类相关的整型值。

LoginName11用户的登录名(SQLServer安全登录或MicrosoftWindows®登录凭据,格式为DOMAIN\Username)。

LoginSid141登录用户的安全标识号(SID)。可以在master数据库的sysxlogins表中找到该信息。对于服务器中的每个登录,SID是唯一的。

Mode32不同事件所用的整数,用于描述事件已接收或要请求的状态。

NestLevel29表示@@NESTLEVEL所返回的数据的整数。

NTDomainName17用户所属的MicrosoftWindowsNT®4.0或Windows2000域。

NTUserName16WindowsNT4.0或Windows2000用户名。

ObjectID22系统分配的对象ID。

ObjectName34引用的对象名。

ObjectType28表示事件中涉及的对象类型的值。该值对应于sysobjects中的type列。

OwnerName37对象所有者的数据库用户名称。

Permissions19表示所检查的权限类型的整型值。取值为:

1=SELECTALL

2=UPDATEALL

4=REFERENCESALL

8=INSERT

16=DELETE

32=EXECUTE(仅限于过程)

4096=SELECTANY(至少一列)

8192=UPDATEANY

16384=REFERENCESANY

Reads16服务器代表事件执行的逻辑磁盘读取数。

RoleName38要启用的应用程序角色名。

ServerName126跟踪的SQLServer实例名。

Severity20异常错误的严重级别。

SPID112SQLServer指派的与客户端相关的服务器进程ID。

StartTime114启动事件的时间(可用时)。

State30等同于错误状态代码。

Success23表示事件是否成功。取值包括:

1=成功。

0=失败

例如,1表示权限检查成功,0表示该检查失败。

TargetLoginName42对于以登录为目标的操作(例如,添加新登录),是目标登录的名称。

TargetLoginSid43对于以目标为登录的操作(例如,添加新登录),是目标登录的SID。

TargetUserName39对于以数据库用户为目标的操作(例如授予用户权限),是该用户的名称。

TextData1与跟踪内捕获的事件类相关的文本值。但是,如果正在跟踪参数化查询,则不以TextData列中的数据值显示变量。

TransactionID4系统分配的事务ID。

Writes17服务器代表事件执行的物理磁盘写入数。

1默认情况下,为所有事件填充这些数据列。

筛选的定义要根据你的跟踪目的来定,一般常常会定义的筛选列包括:

1.DatabaseName同于你要监测的数据库名(不过这个好像不起作用,我的电脑上设置无效)

2.DatabaseID同于你要检测的数据库的dbid,可以用selectdb_id(N'你要监测的库名')得到dbid

3.ObjectName同于你要监测的对象名,例如表名,视图名等

4.ObjectID同于你要监测的对象的id,可以用selectobject_id(N'你要监测的对象名')得到id

5.Error同于错误,如果经常出现某个编号的错误,则针对此错误号

6.Seccess同于0,失败,1,成功,如果是排错,就过滤掉成功的处理

延伸 · 阅读

精彩推荐