.Net编程自动调试监视工具v1.5 注册专业版种类:编程辅助大小:1.8M语言:英文 评分:6.0标签:立即下载SQL server 日志写的最小大小是多少呢?
为此我做了个试验(Win7+SQL server 2012)1)我把磁盘格式化,最小分配单元为4kb
2)我把log 放到磁盘上
3) 我commit一个很小的事务Process Monitor v3.20 绿色英文版 评分: 10.0类别: 系统优化 大小:888KB语言: 英文
查询详细情况
为了与文章中的测试环境一样
我给出这次的数据库所在盘符的分配单元的截图


测试脚本:
1 USE [Northwind]2 GO3 CREATE TABLE t1 4 GO5 BEGIN TRAN6 INSERTINTO t17 VALUES8 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、
多次实行刚刚的测试脚本
1 BEGIN TRAN2 INSERTINTO t13 VALUES4 COMMIT
但因为太多与磁盘有关的记录了,大家怎麽看跟事务日志有关的记录呢??

大家可以用高亮功能
添加两个过滤条件:
operation是writefile
path是E:\数据库文件2013-10-30\northwnd.ldf
符合上面两个过滤条件的记录都将高亮显示



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

SQL server 日志写的最小大小都是512bytes,就是一个扇区的大小
跟文章中说的基本一样
为什麽基本一样,由于我发现有一条记录是2.5MB,宋大师说:
上面那些8M和4M的磁盘写,应该是日志增长所致使的,所以我觉的不可以和log write混淆吧?

测试2、
大家先清空和停止捕获事件

1 --CREATE TABLE t2 ) 2 --go 3 BEGIN TRAN 4 DECLARE @i INT 5 SET @i = 0 6 WHILE 7 BEGIN 8 INSERTINTO t2 9 VALUES10 SET @i = @i + 111 END12 CHECKPOINT13 COMMIT14 DELETEFROM t2
将上面的脚本同时开2个窗口运行
重新点解捕获事件按钮,开始捕获事件

可以看到记录基本上都是大于60K的大小
为什麽会如此??

总结
其实大伙可以用左键双击每条记录,会打开一个详细属性对话框,里面包括了不少关于进程信息,堆栈信息


readfile操作的调用堆栈


进程树

TAG标签:监视(1)
转载请说明来源于谷普下载站(https://www.muerya.com)
本文地址:https://www.muerya.com/news/4247.html
郑重声明:文章来源于网络作为参考,本站仅用于分享不存储任何下载资源,如果网站中图片和文字侵犯了您的版权,请联系我们处理!邮箱3450399331@qq.com

赣公网安备 36010602000087号
相关文章