使用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. SSH 协议的 ssh StrictHostKeyChecking

    项目的SFTP用到了这个参数: @Override public PooledObject<ChannelSftp> makeObject() throws Exception { JSc ...

  2. HP 1010、 1020、 1022 、M1005激光打印机内部无卡纸,但机器仍提示卡纸?

    HP 1010.1018.1020.1022.M1005激光打印机,硒鼓原装编号:Q2612A  1800页 ( A4纸,5%覆盖率).是办公桌面小型打印机中主流产品,故障率极小. 现有一台HP 10 ...

  3. P4610 [COCI2011-2012#7] KAMPANJA

    题目背景 临近选举,总统要在城市1和城市2举行演讲.他乘汽车完成巡回演讲,从1出发,途中要经过城市2,最后必须回到城市1.特勤局对总统要经过的所有城市监控.为了使得费用最小,必须使得监控的城市最少.求 ...

  4. rest framework 序列化

    serializers 序列化组件 可以实现很轻松的互相转换,最常用的组件 ,用量最大的组件 源码位置 rest_framework.serializers 源码中需要用到的    rest_fram ...

  5. Java多线程、线程池和线程安全整理

    多线程 1.1      多线程介绍 进程指正在运行的程序.确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能. 1.2      Thread类 通 ...

  6. 老男孩Python全栈学习 S9 日常作业 004

    1.写代码,有如下列表,按照要求实现每一个功能 li = ["alex", "WuSir", "ritian", "barry&q ...

  7. 【Sql Server】SQL SERVER 收缩日志

    事务日志记录着在相关数据库上的操作,同时还存储数据库恢复(recovery)的相关信息. 收缩日志的原因有很多种,有些是考虑空间不足,有些则是应用程序限制导致的. 下面介绍的是在简单模式下,进行收缩操 ...

  8. 分布式监控系统开发【day38】:报警阈值程序逻辑解析(三)

    一.需求讨论 1.请问如何解决延迟问题 1000台机器,每1分钟循环一次但是刚好第一次循环第一秒刚处理完了,结果还没等到第二分钟又出问题,你那必须等到第二次循环,假如我这个服务很重要必须实时知道,每次 ...

  9. 第二节:比较DateTime和DateTimeOffset两种时间类型并介绍Quartz.Net中用到的几类时间形式(定点、四舍五入、倍数、递增)

    一. 时间的类型 1. 背景 这里为什么要介绍时间类型呢,明明是定时调度篇,原因是在定时任务中,任务什么时间开始执行,什么时间结束执行,要用到各种各样的时间模式,虽然这不能算是一个复杂的问题,但在正式 ...

  10. 第六节:反射(几种写法、好处和弊端、利用反射实现IOC)

    一. 加载dll,读取相关信息 1. 加载程序集的三种方式 调用Assembly类下的三个方法:Load.LoadFile.LoadFrom. //1.1 Load方法:动态默认加载当前路径下的(bi ...