SQL Server Profiler是SQL Server企业版自带的一个sql 语句跟踪和分析工具,功能十分强大。熟练地使用它,对我们分析数据库性能问题很有帮助,比如当数据访问使用EF等ORM框架时,我们经常需要查看它给我们生成的sql语句,然后分析性能问题,我打算从以下几个方面来对它进行总结。
- 环境配置
- 如何跟踪sql语句
- 使用模板
环境配置
要想使用SQL Server Profiler,首先当然是配置好环境,如何进行配置呢?可以分为以下几个步骤。
1,启动SQL Server Profiler,选择菜单"Tools > SQL Server Profiler"启动SQL Server Profiler,如下图。
2,进入到登录窗口,选择链接数据库,输入用户名和密码,点击'Connect'按钮打开跟踪设置窗口,如下图。
3,选择Standard模板,然后进入'events selection'事件选择窗口,如下图。
4,勾选‘show all columns’选项,点击Column Filters...进入列过滤窗口,如下图。
注意,这里用HostName只能针对windows认证的方式登录的,如果是共用sa帐号则无法过滤,这个问题怎么解决,还有待查资料。
5,点击Ok按钮,然后就进入到开始监控的窗口,如下图。
这样环境就配置好了,可以开始跟踪和监视了。
如何跟踪sql语句
我们从本地发起一个查询请求,然后就可以看到执行的sql语句了,如下图。
接下来,可以将跟踪到的sql复制出来,拿到Sql Server中执行并查看执行计划。
使用模板
为了保存经常运行的配置,避免重复设置,提高效率,我们将这些设置保存并建成模板,下次运行的时候直接选择相应的模板即可快速启动跟踪。那么在Sql Server Profiler中怎样新建模板呢?可以通过以下步骤实现。
1,选择菜单'File/Templates/New template...'打开新建跟踪模板窗口,如下图。
2,输入模板名称,并选择基于已存在的Standard模板,事件选择窗口的设置跟环境配置时设置的一样,显示所有列并利用过滤器显示我们需要显示的信息,如下图。
点击保存,一个新的模板就建好了,下次启动的时候可以直接选择模板启动跟踪,是不是很方便?