·天新网首页·加入收藏·设为首页·网站导航
数码笔记本手机摄像机相机MP3MP4GPS
硬件台式机网络服务器主板CPU硬盘显卡
办公投影打印传真
家电电视影院空调
游戏网游单机动漫
汽车新车购车试驾
下载驱动源码
学院开发设计
考试公务员高考考研
业界互联网通信探索
如何用Procmon.exe来监视SQLSERVER的logwrite大小
http://www.21tx.com 2014年01月17日 cnblogs 桦仔

1 2 下一页

在微软亚太区数据库技术支持组官方博客里面,你会发现很多篇文章都用到了Procmon.exe这个工具

今天我也介绍一下这个工具

这个实验基于这篇文章《SQL Server每个日志写(log write)究竟有多大?》

这个工具的下载地址:http://files.cnblogs.com/lyhabc/ProcessMonitor.zip

文章里面的测试内容是这样的

SQL server 日志写(log write)的最小大小是多少呢?

为此我做了个试验(Windows 7+SQL server 2012)

1)我把磁盘格式化,最小分配单元为4kb
2)我把log 放到磁盘上
3) 我commit一个非常小的事务

为了与文章中的测试环境一样

我给出这次的数据库所在盘符的分配单元的截图

如何用Procmon.exe来监视SQLSERVER的logwrite大小

如何用Procmon.exe来监视SQLSERVER的logwrite大小

测试脚本:

USE [Northwind]   
GO   
CREATE TABLE t1 ( c1 INT )   
GO   
BEGIN TRAN   
INSERT  INTO t1   
VALUES  ( 1 )   
COMMIT

我们怎麽来测试呢??

第一步:首先我们当然要打开SSMS,然后拷贝脚本进去啦,哈哈

第二步:要找到SQLSERVER的进程编号,因为我的机器安装了SQL2005,SQL2008,SQL2012

所以需要找一下SQL2005的进程编号是多少

如何用Procmon.exe来监视SQLSERVER的logwrite大小

第三步:打开服务管理器,我安装SQL2005的时候使用的是默认实例,那么找到默认实例的SQLSERVER服务,

然后看这个服务用的是哪个帐户来登录的

SQL2005:system

如何用Procmon.exe来监视SQLSERVER的logwrite大小

SQL2008:network service

如何用Procmon.exe来监视SQLSERVER的logwrite大小

SQL2012:MSSQL$SQL2012

如何用Procmon.exe来监视SQLSERVER的logwrite大小

第四步:打开任务管理器,看一下SQL2005对应的是哪个进程

找到啦,进程编号是1736

如何用Procmon.exe来监视SQLSERVER的logwrite大小

当然啦,如果你的电脑只安装了一个SQLSERVER,只有一个默认实例就不用这麽麻烦了

第五步:打开Procmon.exe

先简单介绍一下一些按钮的作用

如何用Procmon.exe来监视SQLSERVER的logwrite大小

捕获事件,其实这个软件跟SQLSERVER profiler一样,捕获事件就相当于“开始跟踪”

然后下面的显示框会一条一条的显示事件信息,相当于profiler里面跟踪记录,一条一条记录显示给你看

如何用Procmon.exe来监视SQLSERVER的logwrite大小

事件种类:有注册表,文件系统,进程和线程,网络,性能

就像profiler里面的新建跟踪,里面也有很多的事件给你选择

第六步:因为我这里只是观察logwrite,所以只需要监控文件系统就可以了,注册表、网络这几个按钮不用点击

如何用Procmon.exe来监视SQLSERVER的logwrite大小

如何用Procmon.exe来监视SQLSERVER的logwrite大小

第七步:过滤:可以过滤的内容比较多,我这里就选择只显示SQL2005进程的内容

如何用Procmon.exe来监视SQLSERVER的logwrite大小

如何用Procmon.exe来监视SQLSERVER的logwrite大小

确定之后就可以点击OK了

如何用Procmon.exe来监视SQLSERVER的logwrite大小

如何用Procmon.exe来监视SQLSERVER的logwrite大小

捕获和停止捕获,还有清空显示屏按钮

如何用Procmon.exe来监视SQLSERVER的logwrite大小

刚才点击确定之后,Procmon.exe会马上捕获SQLSERVER所有与文件系统相关操作的事件

第八步:这个时候需要先停止捕获,然后再清空显示屏

如何用Procmon.exe来监视SQLSERVER的logwrite大小


开始测试

测试一:

多次执行刚才的测试脚本

1 BEGIN TRAN
2 INSERT  INTO t1
3 VALUES  ( 1 )
4 COMMIT

但是由于太多与磁盘相关的记录了,我们怎麽看跟事务日志相关的记录呢??

如何用Procmon.exe来监视SQLSERVER的logwrite大小

上一篇: SQL SERVER中Key Hash Value的作用(上)
下一篇: SQL SERVER 2012里的扩展事件初尝试(下)

1 2 下一页

关于我们 | 联系我们 | 加入我们 | 广告服务 | 投诉意见 | 网站导航
Copyright © 2000-2011 21tx.com, All Rights Reserved.
晨新科技 版权所有 Created by TXSite.net