使用SQLProfiler(事件探查器)跟踪数据库操作及慢查询

1:应用程序连接SQL SERVER数据库服务器;

2:打开SQL Profiler开启数据库事件跟踪;

(1):打开SQL Server Management Studio,选择 “工具”—“SQL Server Profiler”,如下图:

(2): 连接到指定服务器,并制定跟踪计划;

选择需要连接的服务器之后;

默认弹出跟踪属性设置界面,

可以设置跟踪结果保存到文件或者保存到表,并能设置跟踪的停止时间;如下图:

在事件选择框中选择要跟踪的事件,如下图:

具体事件类别请参考。

上图可以看出,可以跟踪指定的应用程序,指定的机器名,指定的数据库登录名,能记录所有应用程序发出的SQL操作请求以及执行开始时间,结束时间,持续时间等;

在上图的列筛选器中对需要跟踪的事件设置筛选条件;如下图:

如有多个应用程序或者多个人同时登陆连接到这台数据库服务器,可以在这里进行筛选设置,只跟踪指定机器,指定应用程序,指定数据库登录用户的所有数据库操作;

具体跟踪各事件列的含义请参考:

点运行之后,可自动运行,无须值守,可自动运行到之前设置跟踪计划时指定的停止时间,停止跟踪;

(3):运行应用程序,进行测试操作;

应用程序包括:所有连接数据库的应用程序都可以,无论是C/S架构的软件,还是B/S架构的浏览器,或者数据库本身,所有连接到数据库,对数据库做的任何操作都可以记录,并可以根据设置的跟踪条件进行筛选;

如设置超过指定时间的查询:

(4):对跟踪结果进行分析;如下图:

如上图所示,已经记录了执行的SQL查询语句,开始时间,结束时间,持续时间,查询的应用程序名,发起人等;

注:有时候可能显示时间都0,此时可以工具——>选项中对时间单位进行设置。

附录:

事件类别

 

Broker 事件类别包括由 Service Broker 生成的事件类。

Cursors 事件类别包括由游标操作生成的事件类。

CLR 事件类别 包括通过执行 .NET 公共语言运行时 (CLR) 对象而生成的事件类。

Database 事件类别包括自动增大或收缩数据文件或日志文件时生成的事件类。

Deprecation 事件类别包括与不推荐使用的情况相关的事件。

Errors and Warnings 事件类别(数据库引擎)包括返回 SQL Server 错误或警告时产生的事件类。例如,编译存储过程时发生的错误或 SQL Server 中的异常错误。

Full Text 事件类别包括启动、中断或停止全文搜索时生成的事件类。

Locks 事件类别包括在获取、取消、释放锁时或者在对锁执行一些其他操作时生成的事件类。

Objects 事件类别包括在创建、打开、关闭或删除数据库对象时生成的事件类。

OLEDB 事件类别包括由 OLE DB 调用生成的事件类。

Performance 事件类别包括在执行 SQL 数据操作语言 (DML) 运算符时生成的事件类。

Progress Report 事件类别包括 Progress Report: Online Index Operation 事件类。

Scans 事件类别包括扫描表和索引时生成的事件类。

Security Audit 事件类别包括用于审核服务器活动的事件类。

Server 事件类别包含常规服务器事件。

Sessions 事件类别包括在连接和断开 SQL Server 实例的客户端时生成的事件类。

Stored Procedures 事件类别包括执行存储过程时生成的事件类。

Transactions 事件类别包括执行 Microsoft 分布式事务处理协调器事务时或写入事务日志时生成的事件类。

TSQL 事件类别包括执行从客户端传递到 SQL Server 实例的 Transact-SQL 语句时生成的事件类。

User-Configurable 事件类别包括可以定义的事件类。

详情请参考:http://technet.microsoft.com/zh-cn/library/ms175481(v=sql.90).aspx

使用SqlServer_Profiler跟踪慢查询的更多相关文章

  1. 【VBA研究】VBA通过HTTP协议实现邮件轨迹跟踪查询

    作者:iamlasong 1.接口说明 通过互联网訪问,运单跟踪信息查询接口基于HTTP协议开发,接口为RESTFul风格的Web Service,信息交互过程为用户按我方提供的web service ...

  2. PostgreSQL 慢查询SQL跟踪

    PostgreSQL 开启慢SQL捕获在排查问题时是个很有效的手段.根据慢SQL让我在工作中真正解决了实际问题,很有帮助. PostgreSQL 日志支持的输出格式有 stderr(默认).csvlo ...

  3. PostgreSQL 慢查询SQL语句跟踪

    示例:启用 SQL 跟踪PostgreSQL 日志支持的输出格式有 stderr(默认), csvlog , syslog 一般的错误跟踪,只需在配置文件 [postgresql.conf]简单设置几 ...

  4. 【监控实践】【4.1】利用trace实现阻塞跟踪和慢查询跟踪

    原文:https://blog.csdn.net/kk185800961/article/details/49252037 分享个SQLServer profiler 的一个技巧吧.很早用过,忘记总结 ...

  5. SQL Server 默认跟踪(Default Trace)

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 基础知识(Rudimentary Knowledge) 查看默认跟踪信息(Default Tr ...

  6. Entity Framework Code First实体对象变动跟踪

    Entity Framework Code First通过DbContext.ChangeTracker对实体对象的变动进行跟踪,实现跟踪的方式有两种:变动跟踪快照和变动跟踪代理. 变动跟踪快照:前面 ...

  7. Bug跟踪的流程

    本文以翼发云协同项目管理系统为例子来讲解Bug跟踪的流程,它以工作流为中心的集成式Bug跟踪软件,它广泛地应用于研发行业的产品缺陷管理 与跟踪.事务跟踪.问题跟踪.任务跟踪.查询跟踪.需求管理.变更跟 ...

  8. AX2012 ERP “系统慢”调优---跟踪SQL执行,优化代码

    对于用户来说,系统是:慢的,难用的.你看xxx,多好用,多快,多人性化. 对于AX ERP系统也不例外,调优是必须的,调优一般分为几种: 系统性监测针对瓶劲环节提升,如:用户--应用服务器--DB-- ...

  9. SQL Server 默认跟踪(Default Trace)获取某个Trace跟踪了哪些Event和column

    检查Default Trace是否已经开启,如果返回Figure1中value为1,那就说明已经开启默认跟踪了:如果value为0表示关闭默认跟踪: --查询Default Trace是否开启 ; 如 ...

随机推荐

  1. 内存管理中提到的hot cold page

    所谓冷热是针对处理器cache来说的,冷就是页不大可能在cache中,热就是有很大几率在cache中. cold page和hot page的概念可以参考LWN的一片文章http://lwn.net/ ...

  2. react性能优化

    前面的话 本文将详细介绍react性能优化 避免重复渲染 当一个组件的props或者state改变时,React通过比较新返回的元素和之前渲染的元素来决定是否有必要更新实际的DOM.当他们不相等时,R ...

  3. 2.2 collection 模块

    2.2.1 定义命名元祖 2.2.2 定义双端队列 2.2.3 定义有序的字典 2.2.4 定义有默认值的字典

  4. Hdoj 2149.Public Sale 题解

    Problem Description 虽然不想,但是现实总归是现实,Lele始终没有逃过退学的命运,因为他没有拿到奖学金.现在等待他的,就是像FarmJohn一样的农田生涯. 要种田得有田才行,Le ...

  5. <Android基础>(四) Fragment Part 1

    Fragment 1)Fragment的简单用法 2)动态添加Fragment 3)在Fragment中模拟返回栈 4)Fragment和活动之间通信 第四章 Fragment Fragment是一种 ...

  6. CF908D New Year and Arbitrary Arrangement(期望Dp+数学)

    题目大意:给你一个空字符串,你有\(\frac{pa}{pa+pb}\)的概率往字符串最后面加个\(a\),\(\frac{pb}{pa+pb}\)的概率往字符串最后面加个\(b\),当子序列\(ab ...

  7. centos7下tomcat8.5安装部署与优化

    转自:https://www.cnblogs.com/busigulang/articles/8529719.html centos 7 Tomcat 8.5 的安装及生产环境的搭建调优 一 安装to ...

  8. Mac版 IntelliJ Idea使用系列(一)

    当连续import同一个包的多个类时,Idea会自动改成import xxx.*; 办法:修改Names count to use static import with '*'

  9. Python终极coding

    作为一名程序员,除了需要具备解决问题的思路以外,代码的质量和简洁性也很关键.因为从一个人的代码可以直接看出你的基本功.对于Python而言,这就意味着你需要对Python的内置功能和库有很深入的了解. ...

  10. 第十三节:Lambda、linq、SQL的相爱相杀(2)

    一. Linq开篇 1.Where用法 linq中where的用法与SQL中where的用法基本一致. #region 01-where用法 { //1. where用法 //1.1 查询账号为adm ...