检测SqlServer服务器IO是否瓶颈

通过性能监视器监视

Avg. Disk Queue Length   小于2

Avg. Disk sec/Read , Avg. Disk sec/Write  小于10ms

可以用数据收集器定时收集

平均物理读次数最多的SQL语句:

select top 50 *, (s.total_physical_reads / s.execution_count) as avephysicalreads from sys.dm_exec_query_stats s
 cross apply sys.dm_exec_sql_text(s.sql_handle)
 order by avephysicalreads desc

平均逻辑读次数最多的SQL语句:

 select top 50 *, (s.total_logical_reads / s.execution_count) as avglogicalreads from sys.dm_exec_query_stats s
 cross apply sys.dm_exec_sql_text(s.sql_handle)
 order by avglogicalreads desc 

平均逻辑写次数最多的SQL语句:

 select top 50 *, (s.total_logical_writes / s.execution_count) as avglogicalwrites from sys.dm_exec_query_stats s
 cross apply sys.dm_exec_sql_text(s.sql_handle)
 order by avglogicalwrites desc

返回执行的线程所遇到的所有等待的相关信息

select * from sys.dm_os_wait_stats

返回正在等待某些资源的任务的等待队列的有关信息

select * from sys.dm_os_waiting_tasks

 提示:数据文件及日志文件最好是给足空间,如果是自己自增长的话,如果此时读写比较频繁,对IO性能影响很大。

原文地址:https://www.cnblogs.com/gjhjoy/p/3253408.html