怎样使用Process Monitor来监视SQLSERVER的logwrite大小

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

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

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

Process Monitor v3.01 绿色汉化版下载地址:www./softs/32403.html

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

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

测试脚本:

1 USE [Northwind]2 GO3 CREATE TABLE t1 ( c1 INT )4 GO5 BEGIN TRAN6 INSERT INTO t17 VALUES ( 1 )8 COMMIT

我们怎麽来测试呢??

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

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

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

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

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

SQL2005:system

SQL2008:network service

SQL2012:MSSQL$SQL2012

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

找到啦,进程编号是1736

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

第五步:打开Procmon.exe

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

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

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

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

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

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

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

确定之后就可以点击OK了

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

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

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

开始测试

测试一:

多次执行刚才的测试脚本

1 BEGIN TRAN2 INSERT INTO t13 VALUES ( 1 )4 COMMIT

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

我们可以使用高亮功能

添加两个过滤条件:

operation 是writefile

path是 E:/数据库文件2013-10-30/northwnd.ldf

符合上面两个过滤条件的记录都将高亮显示

然后你会看到符合条件的都高亮显示了

SQL server 日志写的最小大小都是512bytes,就是一个扇区的大小

跟文章中说的基本一样

为什麽基本一样,因为我发现有一条记录是2.5MB,宋大师说:

上面那些8M和4M的磁盘写,应该是日志增长所导致的,所以我觉的不能和log write混淆吧?

测试二:

我们先清空和停止捕获事件

1 --CREATE TABLE t2 ( c1 INT, c2 CHAR(7000) ) 2 --go 3 BEGIN TRAN 4 DECLARE @i INT 5 SET @i = 0 6 WHILE ( @i < 100000 ) 7 BEGIN 8 INSERT INTO t2 9 VALUES ( @i, 'dadf' )10 SET @i = @i + 111 END12 CHECKPOINT13 COMMIT14 DELETE FROM t2

将上面的脚本同时开2个窗口运行

重新点解捕获事件按钮,开始捕获事件

可以看到记录基本上都是大于60K的大小

为什麽会这样??

总结

其实大家可以用左键双击每条记录,会打开一个详细属性对话框,里面包含了很多关于进程信息,堆栈信息

readfile操作的调用堆栈

进程树

(0)

相关推荐

  • Process Monitor使用实例方法

    Windows系统和应用程序监视工具 Process Monitor V2.93 绿色汉化版如果玩得很顺手,可以让我们快速了解一个软件他是怎样与系统互动结合的。这里我们来举两个场景,了解一下如何去使用 ...

  • 怎样使用Process Monitor

    最近个人计算机的隐私问题得到很大关注,如何确保个人隐私不被泄露是一个值得注意的问题.这里介绍Process Monitor软件的使用. 步骤/方法 01 下载Process Monitor压缩包,解压 ...

  • server2003 sp2+iis 6.0上部署.net 2.0和.net 4.0网站

    网站环境 IIS6.0,操作系统Windows server2003 sp2,服务器之前已经部署了.net 2.0和asp的网站,现在要部署新开发的.net 4.0网站.本来认为很简单,却遇到了很多问 ...

  • 十款微软实用精品工具使用技巧

    今天为大家推荐10个微软官方发布的实用小工具,都是免费的,其中,不乏大家比较熟悉的Process Monitor、AutoRuns等等精品小程序,熟练使用这些小工具能够帮助大家更有能力处理Window ...

  • 阿里云操作运维Windows系统有哪些问题

    Windows2008 32位 64位自助正版激活教程 外网访问ECS服务器端口不通的排查方法 mysql的binlog太大太多占用大量磁盘 ECS服务器每3天出现一次CPU 100%的情况分析 EC ...

  • 如何解决“您即将被注销”Windows上的错误?

    操作方法 01 造成这种问题,可能是系统错误,或者是电源设置配置错误了,也可能和第三方软件开启的防火墙有关系,所以可以先关闭掉应用程序进程. 02 也有可能是恶意软件造成的,这时候可能点什么都没反应了 ...

  • win7文件夹视图信息备份的方法详解(图)

    系统备份文件夹视图信息步骤如下: windows 7在重装系统之后,经常会遇到这样的问题:我们某些文件夹下的视图信息又恢复到了默认状态(未备份)。比如我比较常用而且喜欢的视图方式为"内容",而上级文件 ...

  • Services.exe是什么进程?Services.exe病毒吗?Services.exe占CPU情况

    来历及作用 services.exe进程程序文件是由微软公司为其发布的Windows操作系统定义的一个系统进程,常见于Windows 2000/XP/Vista/2007等系统中,被描述为服务和控制器 ...

  • Windows Installer自动修复造成注册表内容重置

    这几天碰到个很奇怪的问题,软件安装完了之后,使用正常,但是在重新启动之后注册表里面的用户设置居然丢失。 进注册表看的时候发现注册表键都在,只是值的内容没了。根据Process Monitor的报告,是 ...