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

sql-server – 在正在生产的数据库上使用SQL事件探查器

发布时间:2020-12-12 06:15:28 所属栏目:MsSql教程 来源:网络整理
导读:作为开发人员,我经常使用SQL事件探查器.它是一个很好的调试工具,用于跟踪我的代码正在执行的操作以及分析性能问题. 但我总是在我的开发环境中使用它,并以一种非常可控的方式使用它. 启动我的应用程序,并使其进入特定状态 在探查器上开始跟踪 对我的应用程序执
作为开发人员,我经常使用SQL事件探查器.它是一个很好的调试工具,用于跟踪我的代码正在执行的操作以及分析性能问题.

但我总是在我的开发环境中使用它,并以一种非常可控的方式使用它.

>启动我的应用程序,并使其进入特定状态
>在探查器上开始跟踪
>对我的应用程序执行特定的操作序列
>停止跟踪并检查结果.

SQL事件探查器是否可以在生产环境中实际使用?

我首先担心的是它会降低性能.

我的第二个问题是,因为它正在制作中,所以你并没有触发有趣的动作本身.您必须让探查器长时间运行然后分析结果.结果集会变得太笨重吗? (占用太多磁盘空间并且太难查询).

有人在生产中使用SQL事件探查器吗?

解决方法

使用Sql Server Profiler(GUI工具)跟踪生产服务器不是一个好主意.但这取决于负荷.使用服务器端sql跟踪(请参阅 sp_trace_XXX过程)而不是它.我也找到了文章:

Performance Impact: Profiler Tracing vs. Server Side SQL Tracing,

Automating Server Side Tracing in SQL Server

Avoid Causing Problems with Profiler

也许它会感兴趣和有用.

Book Online说:

>远程运行Profiler而不是直接在服务器上运行>除非绝对需要,否则避免包括频繁发生的事件(例如Lock:Acquired)>仅包括所需的事件类>指定限制过滤器以减少事件数>避免冗余数据(例如SQL:BatchStarting和SQL:BatchCompleted)>避免使用Profiler运行大型跟踪;考虑使用服务器端SQL Trace>限制服务器端跟踪文件大小并管理空间使用情况

(编辑:李大同)

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

    推荐文章
      热点阅读