能干什么
1.可以监视SQL Server内部发生的各种活动:例如发生在数据库引擎中的活动,发生在Analysis Services以及Integration Services中的活动。
2.监控并且确认某些查询,事务相关的性能问题等。
3.可以对执行计划进行分析。
4.可以监视并且确认SQL Server内部的发生的一些错误和警告。
5.可以捕获数据库发生的数据,并且还可以对数据库的压力进行重放。
6.可以对数据库中用户的活动进行审计跟踪。
7.可以通过多种方式对数据进行分析与跟踪。
8.可以将跟踪的数据与系统的性能计数器关联起来,从而更加全面的检查发生的问题。
9.可以将跟踪的数据以DTA来进行分析
10.还可以对SQL Profiler进行编程,可以不使用它的GUI工具。
工作原理
1.SQL Server事件是指由SQL Server本身内部触发的活动,或者由客户端与SQL Server进行连接时在SQL Server内部触发的活动。事件包含很多不同的种类,我们将会在后续文章中详解介绍。
2.因为事件发生在SQL Server的内部,SQL Trace的任务就是根据Filter来捕获自己感兴趣的事件。
3.一旦事件被SQL Trace捕获,那么发生的事件与相关的事件信息就会被保存在内存的队列中。
4.SMO(Server Management Objects),是可以直接的访问SQL Server的对象模型。其实,SQL Trace对于我们而言,就可以将之看成是一个黑盒,我们能做的就是通过一些方式和工具去与这个黑盒交互,SQL Profiler和系统的存储过程就是这样的工具。