如何判断MSSQL数据库磁盘出现了瓶颈
SQL SERVER提供了很多关于I/O压力的性能计数器,请选择性能计算器PhysicalDiskLogicalDisk),根据我们的经验,如下指标的阈值可以帮助你判断IO是否存在压力:  
1.  %Disk Time :这个是磁盘时间百分比,这个平均值应该在85%以下  
2. Current Disk Queue Length:未完成磁盘请求数量,这个每个磁盘平均值应该小于2.   
3. Avg. Disk Queue Length:磁盘请求队列的平均长度,这个每个磁盘平均值也应该小于2  
4. Disk Transfers/sec:每次磁盘传输数量,这个每个磁盘的最大值应该小于100  
5. Disk Bytes/sec:每次磁盘传入字节数,这个在普通的磁盘上应该在10M左右  
6. Avg. Disk Sec/Read:从磁盘读取的平均时间,这个平均值应该小于10ms(毫秒)  
7. Avg. Disk Sec/Write:磁盘写入的平均时间,这个平均值也应该小于10ms(毫秒)  
以上,请根据己的磁盘系统判断,比如传统的机械臂磁盘和SSD有所不同。  
一般磁盘的优化方向是:  
1. 硬件优化:比如使用更合理的RAID阵列,使用更快的磁盘驱动器,添加更多的内存  
2. 数据库设置优化:比如创建多个文件和文件组,表的INDEX和数据放到不同的DISK上,将数据库的日志放到单独的物理驱动器,使用分区表  
3. 数据库应用优化:包括应用程序的设计,SQL语句的调整,表的设计的合理性,INDEX创建的合理性,涉及的范围很广  
希望对您有所帮助,谢谢!

发表评论

电子邮件地址不会被公开。 必填项已用*标注