Heim  >  Artikel  >  Datenbank  >  SqlServer2005 性能调校之 利用Sql Server Profiler捕捉阻塞事件

SqlServer2005 性能调校之 利用Sql Server Profiler捕捉阻塞事件

WBOY
WBOYOriginal
2016-06-07 17:43:20824Durchsuche

在SQLServer2005之前,从不同的来源可以得到很多可用的脚本,来捕获哪些数据库进程产生阻塞以及哪些进程被阻塞。然而,这些脚本需要手工执行。sp_blocker就是一个实例。 然而,我们可以利用Sql Server Profiler ,来自动的捕获被阻塞的进程。要用Sql Server

  在SQLServer2005之前,从不同的来源可以得到很多可用的脚本,来捕获哪些数据库进程产生阻塞以及哪些进程被阻塞。然而,这些脚本需要手工执行。sp_blocker就是一个实例。

  然而,我们可以利用Sql Server Profiler ,香港虚拟主机,来自动的捕获被阻塞的进程。要用Sql Server Profiler捕获这些进程,我们需要用到Sql Server Profiler 的Blocked Process Report事件。

.Blocked Process Report:这表示一个任务被阻塞的时间已经超出了特定时间长度。这个事件类不包含系统任务或等待非死锁可检测(non-deadlock-detectable)资源的任务。

  为了配置Sql Server Profiler,我们必须在SqlServer中为捕获阻塞事件配置一个阈值。

现在我通过一个例子来实现,利用Sql Profiler捕捉阻塞事件:

一.配置Blocked Process Report
1.打开Sql Server Profiler工具 如图:

2.新建跟踪 如图:

3.选择要跟踪的数据实例,如图:

4.选择跟踪模板,为空白,如图:

5.选择Blocked Process Report 事件,如图:

 

为了配置阈值及生产报表的频度,可使用sp_configure命令来配置Blocked Process Report选项,默认情况下是不产生阻塞进程报表的。在代码实例中,Blocked Process Report配置为5秒钟报告一次阻塞事件,香港空间,配置之后,再次执行sp_configure验证是否配置成功:

--首先执行以下语句配置 sp_configure ,1 GO RECONFIGURE GO sp_configure ,5 GO RECONFIGURE GO --然后再执行 sp_configure ,服务器空间

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn