什么是SQL Server Profiler中的“审核注销”?

时间:2010-01-25 13:27:17

标签: c# linq sql-server-2005 linq-to-sql sql-server-profiler

我正在运行数据导入(使用C#/ Linq),当然我正在尝试尽可能优化我的查询。为此,我使用SQL Server Profiler在数据库上运行跟踪,我的跟踪按我的SQL登录名称进行过滤(这是一个可以唯一归因于我的数据导入过程的名称)。

奇怪的是,我的大多数SQL语句都非常快:) - 很少有查询突破1ms标记。但是我的所有查询之间的间隔是几行,其中EventClass是“审核登录”或“审核注销” - 并且“审核注销”的持续时间可以长达一分钟!

这与我在导入中使用交易的事实有关吗?如果是这样,有没有办法找到哪些是重要的查询,以便我可以清理它们?

4 个答案:

答案 0 :(得分:75)

如果我没记错,审核注销的持续时间是连接打开的时间。例如。与命令的速度无关 - 只是登录'登录'的时间。

答案 1 :(得分:11)

登录/退出事件与设置/拆除有关。 IIRC的时间是'已登录的时间',而不是与其他日志事件一样的处理持续时间。

一般情况下,除非您怀疑连接池管理存在问题,否则会隐藏这些事件。

批次的原始时间应足以诊断实际活动的时间,包括任何交易的影响等。

答案 2 :(得分:3)

Audit Logout事件类表示用户已注销(注销)Microsoft SQL Server。此类中的事件由新连接或从连接池重用的连接触发。

它是连接登录的总时间,包括空闲时间,因此它不表示性能问题。同样分析登录/注销也不太可能导致性能问题。您最好不要寻找效果不佳的查询,可能是长时间运行的查询。

有关详情,我建议https://msdn.microsoft.com/en-us/library/ms175827.aspx:)

答案 3 :(得分:2)

另外值得注意的是,在this answer中,审核登录/注销可能只是意味着连接正在重用/返回到连接池。