欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

SQLSERVER2012里的扩展事件初尝试(上)

程序员文章站 2022-05-01 09:10:02
...

SQLSERVER2012里的扩展事件初尝试(上) SQLSERVER2012里的扩展事件初尝试(下) 周未看了这两篇文章: 扩展事件在Denali CTP3里的新UI(一) 扩展事件在Denali CTP3里的新UI(二) 觉得在SQLSERVER2012开始,扩展事件的管理更加容易了,之前一直没有用过扩

SQLSERVER2012里的扩展事件初尝试(上)

SQLSERVER2012里的扩展事件初尝试(下)

周未看了这两篇文章:

扩展事件在Denali CTP3里的新UI(一)

扩展事件在Denali CTP3里的新UI(二)

觉得在SQLSERVER2012开始,扩展事件的管理更加容易了,之前一直没有用过扩展事件

只是听过,看了文章的介绍,觉得扩展事件跟SQLSERVER PROFILER有很多相似之处

大家可以融会贯通

之前有一篇文章:扩展事件在Denali CTP1里的新功能

文章里说在SQLSERVER2012之前,扩展事件的所有操作只能用TSQL或C#代码来实现

现在SQLSERVER2012就方便多了,有了新的GUI,趋向于傻瓜了,对我来讲是好事o(∩_∩)o 哈哈

趁机学习一下扩展事件

简单介绍

首先打开SQLSERVER2012的SSMS,依次点击打开管理-》扩展事件-》会话

SQLSERVER2012里的扩展事件初尝试(上)

在会话文件夹中,点击右键-》可以新建会话/新建会话向导

在已有的会话中,点击右键-》启动会话、新建会话、导出会话、删除、属性

SQLSERVER2012里的扩展事件初尝试(上)

这些菜单已经很丰富了

点击-》新建会话向导 ,SQLSERVER会一步一步引导您怎麽新建一个会话

包括设置会话熟悉感、选择模板、选择要捕获的事件、选择要捕获的全局字段、设置事件会话筛选器、指定会话数据存储

SQLSERVER2012里的扩展事件初尝试(上)

这个向导我就不介绍了,我们一般都不喜欢用傻瓜的向导,生怕漏了什么东西没有设置

其实大家看到向导中要设置的步骤:选择模板、设置事件会话筛选器、选择要捕获的全局字段,有没有觉得和SQLSERVER PROFILER差不多的感觉

SQLSERVER2012里的扩展事件初尝试(上)

SQLSERVER2012里的扩展事件初尝试(上)

建立会话

我们新建一个会话

弹出 新建会话 对话框

SQLSERVER2012里的扩展事件初尝试(上)

左边有常规、事件、数据存储、高级这些tab页

等一下会陆续介绍

常规页面

输入会话名称

SQLSERVER2012里的扩展事件初尝试(上)

在sql profiler里面就是输入跟踪名称

SQLSERVER2012里的扩展事件初尝试(上)

下面有一些选项,,例如在服务器启动时启动事件会话,你可以根据自己实际情况进行勾选

SQLSERVER2012里的扩展事件初尝试(上)

大家知道开启sql profiler会对SQLSERVER的性能造成影响

那么,从下面的“在服务器启动时启动事件会话”

这里告诉我们两个信息

信息一:自动化程度高了,以往我们都是重启服务器就需要自己手动打开sql profiler来重新跟踪SQLSERVER的事件,现在有这个选项就方便多了

不用手动打开扩展事件

信息二:扩展事件对SQLSERVER的性能损耗不大

在园子里的燕洋天大侠的文章大话扩展事件第一篇:概述(上)里提到:

扩展事件的出现与设计主要是以性能为主要的出发点

我们可以使用一个文件目标对象在相关的时间发生之后将信息写入到文件中,这样就非常的轻量级了,并且可以精确到事件发生点

我们在会话名称里输入“blogtest”

SQLSERVER2012里的扩展事件初尝试(上)

会话中也提供了很多模板给我们使用

就像sql profiler里面

SQLSERVER2012里的扩展事件初尝试(上)

在文章扩展事件在Denali CTP3里的新UI(一)中也说了

我们支持与Profiler里模板类似的概念,只要选择一个模板,Event(包括Action和Predicate)和Target以及某些选项就自动选择好了

但是在CTP3里只有一个Standard模板,这个模板所选择的事件和Profiler里的Standard模板相对应

你也可以把自己创建的Session作为模板保存起来以备后用,保存模板只需要右键点击某个Session然后选择Export Session…即可

因为那篇文章出来的时候SQLSERVER2012也只是CTP3的阶段,所以那时候只有一个标准模板,现在SQLSERVER2012出来了

已经多了很多模板了

SQLSERVER2012里的扩展事件初尝试(上)

导出会话就相当于导出模板了

SQLSERVER2012里的扩展事件初尝试(上)

sql profiler里导出模板

SQLSERVER2012里的扩展事件初尝试(上)

导入会话模板

在新建会话对话框里选择模板的下拉列表有一个

SQLSERVER2012里的扩展事件初尝试(上)

SQLSERVER2012里的扩展事件初尝试(上)

事件页面

事件页面是最复杂的,你首先看到它分为左右两部分,左边是事件库,所有在SQL Server里注册的扩展事件都列在这里,右边是你选择的事件。

SQLSERVER2012里的扩展事件初尝试(上)

在选择事件的时候,你可以点击名称列表头,进行事件名称的首字母进行顺序或者倒序排序,

类别和通道也是可以排序的

事件的类别非常多,包括cdc功能的事务日志扫描、死锁监视、高度可用性和数据的安全性(High Availability and Disaster Recovery,HADR)、垃圾回收等等