请问在mssql“SQL事件探查器”里表格的标题,如CPU,Read,Write,Duration,SPID.........的解释 |
SQL 事件探查器数据列 SQL 事件探查器使您得以在创建模板时选择数据列 。这些数据列表现在运行跟踪时希望返回的信息 。在 SQL 事件探查器中显示的数据可以按事件发生的顺序显示,也可以按一个数据列或数据列组合分组显示 。 例如,若要识别执行时间最长的用户事件,请按 DBUserName 和 Duration 对事件进行分组 。SQL 事件探查器将显示每个事件的执行时间 。该功能类似于 Transact-SQL 中的 GROUP BY 子句 。有关更多信息,请参见 GROUP BY 。 说明 不能按 StartTime 或 EndTime 数据列进行分组 。 如果 SQL 事件探查器可以连接到捕获跟踪数据时所在的 Microsoft® SQL Server™ 实例,则将尝试用数据库、对象和索引的名称分别填充 Database ID、Object ID 和 Index ID 数据列 。否则,将显示标识号 (ID) 。 下表描述默认情况下选定的 SQL 事件探查器数据列 。 数据列 列号 描述 Application Name1 10 创建与 SQL Server 实例的连接的客户端应用程序名 。 该列由应用程序传递的值填充,而不是由所显示的程序名填充 。 Binary Data 2 与在跟踪中捕获的事件类相关的二进制值 。 ClientProcessID1 9 由主机计算机分配给进程的 ID,在该进程中客户应用程序正在运行 。如果客户端提供客户端进程 ID,则填充此数据列 。 Column Permissions 44 表明是否已设置了列权限 。分析语句文本,以确定将哪些权限应用到了哪些列 。 CPU 18 事件所使用的 CPU 时间总计(以毫秒为单位) 。 Database ID1 3 USE database 语句所指定的数据库 ID,如果没有对给定实例发出过 USE database 语句,则是默认数据库 。如果在跟踪内捕获 Server Name 数据列且服务器可用,则 SQL 事件探查器将显示数据库名 。 通过使用 DB_ID 函数确定数据库的值 。 DatabaseName 35 正在运行用户语句的数据库的名称 。 DBUserName1 40 客户端的 SQL Server 用户名 。 Duration 13 事件所花费的时间总计(以毫秒为单位) 。 End Time 15 事件结束时的时间 。启动事件的事件类(如 SQL:BatchStarting 或 SP:Starting)的该列不填充 。 Error 31 给定事件的错误号 。通常是存储在 sysmessages 中的错误号 。 EventClass1 27 捕获的事件类类型 。 EventSubClass1 21 事件子类的类型,提供有关每个事件类的进一步信息 。例如,Execution Warning 事件类的事件子类值代表执行警告的类型: 1 = 查询等待 。查询必须等待资源(如内存)才能执行 。 2 = 查询超时 。查询在等待执行所需的资源时超时 。所有事件类的该数据列均不填充 。 FileName 36 所修改的文件的逻辑名称 。 Handle 33 ODBC、OLE DB 或 DB-Library 所用的整数,用以协调服务器的执行 。 Host Name1 8 正运行客户端的计算机名 。如果客户端提供主机名,则填充此数据列 。若要确定主机名,请使用 HOST_NAME 函数 。 Index ID 24 受事件影响的对象上的索引 ID 。若要确定对象的索引 ID,请使用 sysindexes 系统表的 indid 列 。 Integer Data 25 与在跟踪中捕获的事件类相关的整型值 。 LoginName 11 用户的登录名(SQL Server 安全登录或 Microsoft Windows® 登录凭据,格式为 DOMAIN\Username) 。 LoginSid1 41 登录用户的安全标识号 (SID) 。可以在 master 数据库的 sysxlogins 表中找到该信息 。对于服务器中的每个登录,SID 是唯一的 。 Mode 32 不同事件所用的整数,用于描述事件已接收或要请求的状态 。 NestLevel 29 表示 @@NESTLEVEL 所返回的数据的整数 。 NT Domain Name1 7 用户所属的 Microsoft Windows NT® 4.0 或 Windows 2000 域 。 NT User Name1 6 Windows NT 4.0 或 Windows 2000 用户名 。 Object ID 22 系统分配的对象 ID 。 ObjectName 34 引用的对象名 。 ObjectType 28 表示事件中涉及的对象类型的值 。该值对应于 sysobjects 中的 type 列 。 Owner Name 37 对象所有者的数据库用户名称 。 Permissions 19 表示所检查的权限类型的整型值 。取值为: 1 = SELECT ALL 2 = UPDATE ALL 4 = REFERENCES ALL 8 = INSERT 16 = DELETE 32 = EXECUTE(仅限于过程) 4096 = SELECT ANY (至少一列) 8192 = UPDATE ANY 16384 = REFERENCES ANY Reads 16 服务器代表事件执行的逻辑磁盘读取数 。 RoleName 38 要启用的应用程序角色名 。 Server Name1 26 跟踪的 SQL Server 实例名 。 Severity 20 异常错误的严重级别 。 SPID1 12 SQL Server 指派的与客户端相关的服务器进程 ID 。 Start Time1 14 启动事件的时间(可用时) 。 State 30 等同于错误状态代码 。 Success 23 表示事件是否成功 。取值包括: 1 = 成功 。 0 = 失败 例如,1 表示权限检查成功,0 表示该检查失败 。 TargetLoginName 42 对于以登录为目标的操作(例如,添加新登录),是目标登录的名称 。 TargetLoginSid 43 对于以目标为登录的操作(例如,添加新登录),是目标登录的 SID 。 TargetUserName 39 对于以数据库用户为目标的操作(例如授予用户权限),是该用户的名称 。 TextData 1 与跟踪内捕获的事件类相关的文本值 。但是,如果正在跟踪参数化查询,则不以 TextData 列中的数据值显示变量 。 Transaction ID 4 系统分配的事务 ID 。 Writes 17 服务器代表事件执行的物理磁盘写入数 。 1 默认情况下,为所有事件填充这些数据列 。 筛选的定义要根据你的跟踪目的来定,一般常常会定义的筛选列包括: 1.DatabaseName 同于你要监测的数据库名(不过这个好像不起作用,我的电脑上设置无效) 2.DatabaseID 同于你要检测的数据库的dbid,可以用 select db_id(N你要监测的库名)得到dbid 3.ObjectName 同于你要监测的对象名,例如表名,视图名等 4.ObjectID 同于你要监测的对象的id,可以用 select object_id(N你要监测的对象名)得到id 5.Error 同于错误,如果经常出现某个编号的错误,则针对此错误号 6.Seccess 同于0,失败,1,成功,如果是排错,就过滤掉成功的处理 |