通常情况下,使用SQL事件探查器可以:;;
1.查找执行最差的查询
例如,可以创建跟踪来捕获与TSQL和StoredProcedure事件类(尤其是RPC:Completed和SQL:BatchCompleted)相关的事件。在这个跟踪内包含所有数据列,按Duration分组并指定事件准则。例如,如果指定事件的Duration至少为1,000毫秒,则可以跟踪中排除运行时间短的事件。根据需要可以增大Duration的最小值。如果想一次只监视一个数据库,为DatabaseID事件准则指定一个值。
2.识别死锁原因;;
例如,可以创建一个跟踪来捕获与TSQL和StoredProcedure事件类(RPC:Starting和SQL:BatchStarting)以及Locks事件类(Lock:Deadlock和Lock:DeadlockChain)相关的事件。在这个跟踪内包括所有数据列并按EventClass分组。如果想一次只监视一个数据库,为DatabaseID事件准则指定一个值。
若要查看死锁所涉及的连接,执行下列操作之一:
打开包含捕获的数据的跟踪,按ClientProcessID将数据分组并展开死锁所涉及的两个连接。
将捕获的数据保存到一个跟踪文件,然后打开这个跟踪文件两次,使其显示在两个单独的SQL事件探查器窗口内。按ClientProcessID将捕获的数据分组,然后展开死锁所涉及的进程ID;每个死锁连接都在一个单独的窗口内。平铺窗口以查看导致死锁的事件。;;
3.监视存储过程的性能;;
例如,可以创建一个跟踪来捕获与StoredProcedure事件类(SP:Completed、SP:Starting、SP:StmtCompleted和SP:StmtStarting)和TSQL事件类(SQL:BatchStarting和SQL:BatchCompleted)相关的事件。在这个跟踪内包含所有数据列并按ClientProcessID分组。如果想一次只监视一个数据库,为DatabaseID事件准则指定一个值。同样,如果想一次只监视一个存储过程,为ObjectID事件准则指定一个值。
4.审核Microsoft®SQLServer™活动;;
可以使用SQL事件探查器审核SQLServer中的活动。例如,如果安全管理员需要随时了解谁登录到了服务器,可以创建SQL事件探查器跟踪,提供已登录到服务器或从服务器注销的用户的完整视图。之后,可出于法律目的使用这些信息记录活动,和出于技术目的使用这些信息跟踪违反安全策略的行为。
若要设置SQL事件探查器跟踪来跟踪已登录到服务器或从服务器注销的用户,请执行下列操作:;;
创建跟踪并选择AuditLoginEvent。
若要返回适当的信息,请指定下列数据列:;;
EventClass(默认情况下选定)
EventSubClass
LoginSID
LoginName
监视每个用户的Transact-SQL活动。;;
可以创建跟踪来捕获与Sessions事件类、ExistingConnection和TSQL事件类相关的事件。将所有数据列包含在此跟踪内,不要指定任何事件准则,并按DBUserName将捕获的事件分组。