使用SQL Server Profiler监视系统的一些基本概念和各种事件的监视

使用SQL Server Profiler监视系统的一些基本概念和各种事件的监视

这两天需要搞一份我们某个系统的夜间数据库处理的所有数据,从晚上8点左右到早上9点左右都在做数据处理。所以PM希望能够看看晚上的数据处理高峰期和一些事物以及数据库的使用情况,所以需要用profiler来做个像样的分析。如果你不知道一些概念和指标,可以看看这篇文章。

SQL事件探查器数据列:

数据列描述为跟踪内捕获的每个事件类所收集的数据。事件类确定收集的数据类型,因此并不是所有数据列都适用于所有事件类。例如,为Lock:Acquired事件类捕获Binary Data数据列时,该数据列包含锁定的页ID或行的值,但没有Integer Data事件类的值。对于所有事件类,默认数据列均为自动填充。

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

下表描述默认情况下选定的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:BatchStartingSP: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

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

所有的事件类:

事件类是描述由服务器生成的事件的列。事件类确定收集的数据类型,因此并不是所有数据列都适用于所有事件类

每个事件类的子类都可以通过一些数据列来进行分析:

微软提供的所有事件类和数据列的对应分析如下:

最后是用户自己定义的事件类:

以我们常用的存储过程事件类来说明如何结合列进行存储过程事件类分析:

首先给出事件类和数据列的对应关系:

事件类

数据列

描述

RPC Output Parameter

Event Class

记录的事件类型= 100。

Object Name

来自RPC事件(如句柄)的输出参数名。

Text Data

在由远程过程调用(RPC)返回的对象名中命名的参数值。

RPC:Completed

Event Class

记录的事件类型= 10。

End Time

RPC的结束时间。

Duration

RPC的持续时间。

CPU

RPC所使用的CPU数量。

Reads

由RPC发出的页读取数。

Writes

由RPC发出的页写入数。

Text Data

RPC文本。

RPC:Starting

Event Class

记录的事件类型= 11。

Text Data

RPC文本。

SP:CacheHit

Event Data

记录的事件类型= 38。

Object ID

在高速缓存中找到的存储过程的对象ID。

Object Name

在高速缓存中找到的存储过程名。

Text Data

在高速缓存中找到的SQL语句的文本。

SP:CacheInsert

Event Class

记录的事件类型= 35。

Object ID

存储过程的对象ID。

Object Name

在高速缓存中找到的存储过程名。

Text Data

正在高速缓存的SQL语句的文本。

SP:CacheMiss

Event Class

记录的事件类型= 34。

Event Sub Class

存储过程的嵌套级。

Object Name

在高速缓存中找到的存储过程名。

SP:CacheRemove

Event Class

记录的事件类型= 36。

Object ID

存储过程的对象ID。

Object Name

在高速缓存中找到的存储过程名。

Text Data

正在从高速缓存中删除的SQL语句的文本。

SP:Completed

Event Class

记录的事件类型= 43。

Nest Level

存储过程的嵌套级。

End Time

事件的结束时间。

Duration

存储过程运行的时间长度。

Object ID

存储过程的对象ID。

Object Name

在高速缓存中找到的存储过程名。

Object Type

调用的存储过程类型。

Text Data

存储过程调用的文本。

SP:ExecContextHit

Event Class

记录的事件类型= 39。

Object ID

存储过程的对象ID。

Object Name

在高速缓存中找到的存储过程名。

Text Data

在高速缓存中找到的存储过程的文本。

SP:Recompile

Event Class

记录的事件类型= 37。

Nest Level

存储过程的嵌套级。

Object ID

存储过程的对象ID。

Object Name

在高速缓存中找到的存储过程名。

Text Data

触发重新编译的存储过程的文本。

SP:Starting

Event Class

记录的事件类型= 42。

Nest Level

存储过程的嵌套级。

Object ID

存储过程的对象ID。

Object Name

在高速缓存中找到的存储过程名。

Object Type

正在启动的存储过程类型。

Text Data

存储过程调用的文本。

SP:StmtCompleted

Event Class

记录的事件类型= 45。

Event Sub Class

存储过程的嵌套级。

Integer Data

语句返回的实际行数。

Object ID

系统指派的存储过程ID。

Text Data

存储过程内的语句文本。

SP:StmtStarting

Event Class

记录的事件类型= 44。

Event Sub Class

存储过程的嵌套级。

Object ID

系统指派的存储过程ID。

Text Data

存储过程内的语句文本。

然后是每个子事件类的说明:

事件类

描述

RPC Output Parameter

显示有关先前执行的远程过程调用(RPC)的输出参数的信息。

RPC:Completed

在已完成RPC后发生。

RPC:Starting

在RPC已启动后发生。

SP:CacheHit

在高速缓存内找到过程。

SP:CacheInsert

有项目插入过程高速缓存内。

SP:CacheMiss

在过程高速缓存内没找到存储过程。

SP:CacheRemove

项目已从过程高速缓存中删除。

SP:Completed

存储过程已完成。

SP:ExecContextHit

在高速缓存内找到存储过程的执行版本。

SP:Recompile

存储过程已重新编译。

SP:Starting

存储过程已启动。

SP:StmtCompleted

存储过程内的语句已完成。

SP:StmtStarting

存储过程内的语句已启动。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,539评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,911评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,337评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,723评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,795评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,762评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,742评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,508评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,954评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,247评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,404评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,104评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,736评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,352评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,557评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,371评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,292评论 2 352

推荐阅读更多精彩内容