sqlserver的IO性能检查

这一个月老被一个信息科科长纠缠,原因就是他们的sql server 2008 R2老是定期的写入性能低下。我是这样认为的,但身边的人似乎都不这么想。每每我对那个挂在一个交换机上的网络存储表达担忧时,这科长总不以为然。

直到利用window的“管理工具”上的性能监控提供的信息,他们才把重点放回存储上。

检查三项内容:

1.Average disk sec/read, 平均每个读花的时间,小于10ms表示性能很好,在10ms~20ms之间表示性能可以接受,如果大于20ms,说明存在I/O问题;
2.Average disk sec/write,平均每个写花的时间,小于10ms表示性能很好,在10ms~20ms之间表示性能可以接受,如果大于20ms,说明存在I/O问题。
3.Average disk queue length,在磁盘等待的IO个数,最好在1.5和2倍转轴个数(spindles)以内,如果高于这个值,一般说明IO子系统有一定的问题,但现在普遍使用RAID或者磁盘虚拟化,如果不详细了解具体的I/O子系统配置,很难从这个计数器判断出问题。

再加上sql上的各大文件的类似数值,所有存储在H盘(网络存储)的文件读写时间都超长,问题应该很清楚了

select DB_NAME(vfs.database_id) as ‘database name‘,
smf.physical_name,
CASE WHEN smf.type = 1 THEN ‘LOG_FILE‘ ELSE ‘DATA_FILE‘ END AS DatabaseFile_Type,
vfs.io_stall_read_ms/vfs.num_of_reads as ‘Avg read Trans/ms‘,
vfs.io_stall_write_ms/vfs.num_of_writes as ‘Avg write Trans/ms‘
from sys.dm_io_virtual_file_stats(-1,-1) vfs
JOIN sys.master_files AS smf
ON VFS.database_id = smf.database_id
AND VFS.file_id = smf.file_id
where num_of_reads>0 and num_of_writes>0

以下是我学习的网页

http://blog.csdn.net/leamonjxl/article/details/6790832

http://blog.csdn.net/dba_huangzj/article/details/7773744

时间: 2024-10-19 16:51:57

sqlserver的IO性能检查的相关文章

SQLIOSim 模拟SQLServer的行为来测试IO性能

SQLIOSim 功能: 模拟SQLServer的行为来测试IO性能. SQLIOSim的版本: (1) SQL Server 2005的SQLIOSim是需要上网下载的套件. (2) 从SQL Server 2008开始,SQLIOSim会包含在SQL Sever安装内.对于SQL Server 2008 R2,该应用程序所在目录为C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn. (3) SQLIO

10.6 监控io性能 - 10.7 free命令 - 10.8 ps命令 - 10.9 查看网络状态 - 10.10 linux下抓包

- 10.6 监控io性能 - 10.7 free命令 - 10.8 ps命令 - 10.9 查看网络状态 - 10.10 linux下抓包 - 扩展tcp三次握手四次挥手 http://www.doc88.com/p-9913773324388.html  - tshark几个用法:http://www.aminglinux.com/bbs/thread-995-1-1.html  # 10.6 监控io性能 ![mark](http://oqxf7c508.bkt.clouddn.com/b

Performance Monitor4:监控SQL Server的IO性能

SQL Server的IO性能受到物理Disk的IO延迟和SQL Server内部执行的IO操作的影响.在监控Disk性能时,最主要的度量值(metric)是IO延迟,IO延迟是指从Application创建IO请求,到Disk完成IO请求的时间延迟.如果物理Disk不能及时完成IO请求,跟不上请求负载的速度,那么SQL Server就容易出现性能问题.SQL Server内部在执行一些特定的操作时,会和Disk做读写交互,这也会影响物理硬盘响应SQL Server的IO请求的性能,使查询进程处

监控io性能,free,ps命令,查看网络状态以及抓包

监控io性能 1.iostat命令: [[email protected] ~]# iostat Linux 3.10.0-693.el7.x86_64 (weix01) 2018年01月23日 _x86_64_ (1 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 0.49 0.00 1.15 1.28 0.00 97.09 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 12

七周二次课(1月23日) 10.6 监控io性能 10.7 free命令 10.8 ps命令 10.9 查看网络状态 10.10 linux下抓包

七周二次课(1月23日)10.6 监控io性能10.7 free命令10.8 ps命令10.9 查看网络状态10.10 linux下抓包 =====================================================================================================================================================================================

提升Exadata 计算节点本地IO性能

1.问题概述 某客户有一台Exadata X2-2,每个计算节点是4块普通的本地SAS硬盘做成的RAID5,然后在RAID5的本地硬盘上创建了一个文件系统来存放DSG数据同步软件,在后续的运维过程中,发现DSG数据同步软件在进行数据同步时的延时非常严重. DSG进行检查和性能分析后,确认是由于Exadata的本地硬盘提供的IOPS无法满足DSG软件的要求,大量的时间都在等待本地磁盘的读写IO上. 通过磁盘性能分析工具也可以发现,本地盘的IO使用率基本上是在90%以上,严重时长时间100%,客户希

Linux的IO性能监控工具iostat详解

原文地址: http://www.ha97.com/4546.html Linux系统出现了性能问题,一般我们可以通过top.iostat.free.vmstat等命令来查看初步定位问题.其中iostat可以提供更丰富的IO性能状态数据. 1. 基本使用$iostat -d -k 1 10参数 -d 表示,显示设备(磁盘)使用状态:-k某些使用block为单位的列强制使用Kilobytes为单位:1 10表示,数据显示每隔1秒刷新一次,共显示10次. $iostat -d -k 1 10Devi

PHP环境安全性能检查

PHP环境安全性能检查 PHP在Linux环境下安全配置是一个复杂的过程,其中涉及到很多的细节设置,在这里发出来一个脚本,通过这个脚本来检测你的PHP环境是否存在安全隐患,从而针对这些对你的PHP环境进行加固.功能: 1.检测PHP环境安全配置 2.应禁用的功能. 3.危险的设置,可能会导致本地或远程文件包含. 4.错误处理. 5.在编译时定义的常量. 安装PHP环境后,将此三个文件脚本放在网站web目录下(audit.php php.xml style.css )进行浏览器查看,他将在你配置的

SQL Server中一个隐性的IO性能杀手-Forwarded record

原文:SQL Server中一个隐性的IO性能杀手-Forwarded record 简介     最近在一个客户那里注意到一个计数器很高(Forwarded Records/Sec),伴随着间歇性的磁盘等待队列的波动.本篇文章分享什么是forwarded record,并从原理上谈一谈为什么Forwarded record会造成额外的IO.   存放原理     在SQL Server中,当数据是以堆的形式存放时,数据是无序的,所有非聚集索引的指针存放指向物理地址的RID.当数据行中的变长列增