Sha*_*ica 88 c# linq sql-server-2005 sql-server-profiler linq-to-sql
我正在运行数据导入(使用C#/ Linq),当然我正在尝试尽可能优化我的查询.为此,我正在使用SQL Server Profiler在数据库上运行跟踪,我的跟踪由我的SQL登录名过滤(这是一个可以唯一归因于我的数据导入过程的名称).
奇怪的是,我的大多数SQL语句都非常快:) - 很少有查询甚至突破1ms标记.但是我的所有查询之间的间隔是几行,其中EventClass是"审核登录"或"审核注销" - 并且"审核注销"的持续时间可以长达一分钟!
这与我在导入中使用事务的事实有关吗?如果是这样,有没有办法找到哪些是重要的查询,所以我可以清理它们?
Thi*_*ies 79
如果我记得正确,审核注销的持续时间是连接打开的时间.例如,与命令的速度无关 - 只是登录"登录"的时间.
Rub*_*ink 12
登录/退出事件与设置/拆除有关.IIRC的时间是"已登录的时间",而不是与其他日志事件一样的处理持续时间.
通常,除非您怀疑连接池管理存在问题,否则会隐藏这些事件.
批次的原始时间应足以诊断实际活动的时间,包括任何交易的影响等.
小智 5
Audit Logout 事件类指示用户已注销(注销)Microsoft SQL Server。此类中的事件由新连接或连接池中重用的连接触发。
这是连接登录的总时间,包括空闲时间,因此并不表示存在性能问题。此外,分析登录/注销不太可能导致性能问题。您最好寻找性能不佳的查询,可能是长时间运行的查询。
有关更多信息,我建议https://msdn.microsoft.com/en-us/library/ms175827.aspx :)