怎么捕获和记录SQL Server中发生的死锁?( 二 )


2.暂停和停止服务器端跟踪
如果要暂停上面的服务器端跟踪,可运行下面的语句:
SQL code
exec sp_trace_setstatus 1, 0 --第一个参数表示TraceID,即步骤1中的输出参数 。第二个参数表示将状态改为0,即暂停
如果要停止上面的服务器端跟踪,可运行下面的语句:
SQL code
exec sp_trace_setstatus 1, 2 --第一个参数表示TraceID,即步骤1中的输出参数 。第二个参数表示将状态改为2,即停止
3.查看跟踪文件内容
对于上面生成的跟踪文件(e:DbLogdeadlockdetect.trc),可通过两种方法查看:
1).执行t-sql命令
SQL code
select * from fn_trace_gettable('e:DbLogdeadlockdetect.trc',1)
结果中的TextData列即以XML的形式返回死锁的详细信息 。
2).在SQL Server Profiler中打开 。
依次 进入Profiler -> 打开跟踪文件 ->选择e:DbLogdeadlockdetect.trc,就可以看到以图形形式展现的死锁信息了 。




推荐阅读