加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

防止SQL Server的事件探查器跟踪软件

发布时间:2020-12-12 07:54:23 所属栏目:MsSql教程 来源:网络整理
导读:感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧! 两种方法的原理相同 第一种方法: 代码如下: procedure SQLCloseAllTrack; const sql = declare @TID integer + declare Trac Cursor For + SELECT Distinct Traceid FROM :: fn_trace_

感兴趣的小伙伴,下面一起跟随编程之家 52php.cn的小编两巴掌来看看吧!

两种方法的原理相同
第一种方法:

代码如下:

 
procedure SQLCloseAllTrack; 
const 
sql = 'declare @TID integer ' + 
'declare Trac Cursor For ' + 
'SELECT Distinct Traceid FROM :: fn_trace_getinfo(default) ' + 
'open Trac ' + 
'Fetch Next From Trac into @TID ' + 
'while @@fetch_status=0 ' + 
'begin ' + 
' exec sp_trace_setstatus @TID,0 ' + 
' exec sp_trace_setstatus @TID,2 ' + 
' Fetch Next From Trac into @TID ' + 
'end ' + 
'Close Trac ' + 
'deallocate Trac'; 
begin 
//停止所有SQLSERVER的跟踪器,以防止程序被別人跟踪 
ExecSql(sql); 
end; 

第二种方法:

代码如下:

 
with faq1 do 
begin 
Close; 
sql.Clear; 
sql.add('declare @t_count int'); 
sql.add('set @t_count=1'); 
sql.add('while exists(SELECT * FROM ::::fn_trace_geteventinfo(@t_count))'); 
sql.add('begin'); 
sql.add('exec sp_trace_setstatus @t_count,0'); 
sql.add('set @t_count=@t_count+1'); 
sql.add('end'); 
try 
execSQL; 
except; 
end; 
close;sql.Clear; 
end; 
end; 

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读