做开发,平时难免和数据库打交道,特别是写存储过程,对于我们这些不常写SQL的人来说是一件极其痛苦的事,每次写完运行总是有错,如果用的是本地数据库的话还好,可以在本机调试SQL,那如果在数据库在服务器上面,调试被禁用,那就悲剧了~

  最近,由于工作需求,写一个存储过程,有几十个参数,数据库在服务器上面,写完了,测试完查询语句没有问题,但是到了项目里面查询时就出错,很是气人!想到了用SQL Profiler这个工具,打开选择默认设置,开始跟踪,晕,海量数据涌来,看的头晕,根本找不到要跟踪的语句。后来,经过百度搜索和仔细研究,算是学会使用SQL Profiler了。下面和大家分享一下。

 一、SQL Server Profiler简介

SQL Profiler是一个图形界面和一组系统存储过程,其作用如下:

  • 图形化监视SQL Server查询;
  • 在后台收集查询信息;
  • 分析性能;
  • 诊断像死锁之类的问题;
  • 调试T-SQL语句;
  • 模拟重放SQL Server活动;

也可以使用SQL Profiler捕捉在SQL Server实例上执行的活动。这样的活动被称为Profiler跟踪。

 二、SQL Profiler的简单配置和使用

  不多说废话了,关于SQL Profiler的介绍网上多的是,大家自己找吧。下面说到实用的,开始动手操作吧!(注:本地数据库的就不用说了,可以调试运行,主要说数据库在服务器上面的情况。)

  首先说明一下SQL Server Express版本是没有SQL Profiler工具的,企业版有这个工具,其他版本没有用过。下面来看下SQL Profiler在什么地方,首先打开SQL Server Management Sutdio,点击菜单,Tools > SQL Server Profiler,如图:

点击后,首先会出现登录界面,输入用户名密码后,会看到如下界面:

第四行有一项Use the template,选择Standard,如果是本地数据库的话,访问数据库的只有你一个人,点击Run就可以了。如果在服务器上,访问数据的人很多,所以要对结果进行一些过了。然后,点击选项卡Events Selection,如图:

可以看到Standard的默认选项,这个都不用管,选中复选框Show all columns,否则后面的HostName找不到。点击Column Filters...按钮,打开过滤选项页面:

下拉找到HostName项,在Like里面加入自己的计算机名称,这样就只显示我们这台计算机发送的SQL了。

然后,点击OK,点击Run就开始跟踪了,之后你在你电脑上面进行的数据库访问,都会被记录下来。

注意:是在你电脑上面,你访问服务器上面的网站,数据库访问是在服务器上面进行的,不是在你的电脑上面。只有你调试运行的时候,才是从你的电脑访问服务器,才能被跟踪到。

跟踪结果如下:

选中某条记录后就会显示执行的SQL,至于存储过程,我们可以清楚的看到传入的参数,还可以复制出来,进行调试。

如果记录过多,可以选择Edit > Find...下面的菜单,进行搜索。

看到这里,是不是突然感觉很简单啊,呵呵,看了那么多教程,讲的东西挺多,搞半天找不到自己想要的东西,越整越烦!

 三、建立自己的模版,方便下次使用

  如果每次都改计算机名称,很不方便,我们可以做一个自己的模版,下次使用时就不用再进行配置了。下面来看看如何建立自己的模版吧:

如图,点击菜单,打开模版页面.如图所示:

输入你自己的模版名称,如MyProfiler,然后勾选Base new template on existing one:,就是基于某个已存在的模版就行修改,我们依旧选择Standard,下面还有一个Use as default template for selected server type,就是设置为默认模版,勾选上后,我们每次新建跟踪的时候就会默认选中我们添加的这个模版,建议勾上。然后点击Events Selection选项卡,设置HostName就可以了。完成后保存就可以了。

然后,点击File > New trace...新建跟踪,会看到我们新建的模版,并且是默认选中的,此时我们直接点击Run就可以继续我们的工作了。

SQL Server Profiler使用教程,通俗易懂才是王道的更多相关文章

  1. SQL Server Profiler教程

    SQL Server Profiler是SQL Server企业版自带的一个sql 语句跟踪和分析工具,功能十分强大.熟练地使用它,对我们分析数据库性能问题很有帮助,比如当数据访问使用EF等ORM框架 ...

  2. SQL Server Profiler

    一.SQL Profiler工具简介 SQL Profiler是一个图形界面和一组系统存储过程,其作用如下: 图形化监视SQL Server查询: 在后台收集查询信息: 分析性能: 诊断像死锁之类的问 ...

  3. SQL Server Profiler工具

    一.SQL Profiler工具简介 SQL Profiler是一个图形界面和一组系统存储过程,其作用如下: 图形化监视SQL Server查询: 在后台收集查询信息: 分析性能: 诊断像死锁之类的问 ...

  4. SQL2005 : 如何在SQL Server Profiler (事件查看器)中 跟踪查看死锁恢复

    SQL Profiler 通过 SQL Profiler 工具程序,可监控应用程序如何访问数据库引擎.普通来说,当系统性能需要优化或是应用程序对数据库访问的结果不合预期,都可以使用该工具确认视图问题所 ...

  5. 通过SQL Server Profiler来监视分析死锁

    在两个或多个SQL Server进程中,每一个进程锁定了其他进程试图锁定的资源,就会出现死锁,例如,进程process1对table1持有1个排它锁(X),同时process1对table2请求1个排 ...

  6. SQL Server性能优化(3)使用SQL Server Profiler查询性能瓶颈

    关于SQL Server Profiler的使用,网上已经有很多教程,比如这一篇文章:SQL Server Profiler:使用方法和指标说明.微软官方文档:https://msdn.microso ...

  7. (火炬)MS SQL Server数据库案例教程

    (火炬)MS SQL Server数据库案例教程 创建数据库: CREATE DATABASE TDB //数据库名称 ON ( NAME=TDB_dat,//逻辑文件名 在创建数据库完成之后语句中引 ...

  8. Sql Server Profiler保存与重演跟踪

    重演跟踪的作用 可以将一个跟踪当做测试工具,当按照正确的顺序调用某些存储过程是肯能会重新生成特定的故障. 跟踪模板

  9. SQL Server Profiler工具【转】

    一.SQL Profiler工具简介 转自:http://www.cnblogs.com/kissdodog/p/3398523.html SQL Profiler是一个图形界面和一组系统存储过程,其 ...

随机推荐

  1. eclipse配置javaee环境

    笔者开发javaee项目时惯用myeclipse,但由于个人笔记本性能较低,myeclipse对内存的消耗极大,所以考虑换成eclipse开发.本文介绍eclipse配置javaee开发环境的一些体会 ...

  2. OpenMP并行构造的schedule子句详解 (转载)

    原文:http://blog.csdn.net/gengshenghong/article/details/7000979 schedule的语法为: schedule(kind, [chunk_si ...

  3. js动态生成二维码图片

    1.html代码 <div id="qrcode" style="width:200px; height:200px;position: fixed;bottom: ...

  4. python第三方库学习(2):requests

    Make a Request r = requests.get('https://github.com/timeline.json') Passing Parameters In URLspayloa ...

  5. 1036. Crypto Columns 2016 11 02

    /* 对于题目多读几遍,然后再关键字排序的时候,把对应的数组序号也排序, EYDE    MBLR    THAN    MEKT    ETOE    EOTH        MEETME    B ...

  6. Linux echo, sort, sed 等一些命令总结

    linux echo, sort, sed是初学linux shell script 的一些常用的命令.基本上来说,如果能够掌握了这些命令,我们就能写出一些不错的linux脚本.以下是我遇到的以下常用 ...

  7. js 字符串格式化方法

    String.prototype.format = function(args) { var result = this; if (arguments.length > 0) { if (arg ...

  8. textField设置输入文字距左边的距离

    1.设置tetxField的内边距 [self.yourTextField setValue:[NSNumber numberWithInt:5] forKey:@"paddingTop&q ...

  9. 通过统计用户DNS解析记录,实现监控用户上网行为

    上次通过扫描抓包分析TTL的方式检测公司网络开放的端口,发现没有开放53端口(DNS),也就是在公司内部的主机只能用服务器自动分配的DNS,并且发现这是台内部服务器.今天发现bing上不去,检测后发现 ...

  10. office中通过宏添加快捷键

    把“Microsoft 公式 3.0”作为一个按钮放在 2013中的快速访问工具栏的方法 在使用office办公软件的过程中,因为有的人还在使用office2003版本,所以在使用高版本的office ...