WEB开发网
开发学院数据库MSSQL Server SQL Server 2005性能排错(5) 阅读

SQL Server 2005性能排错(5)

 2007-05-15 09:28:24 来源:WEB开发网   
核心提示:使用SQL waits阻塞对整体性能的影响SQL Server 2000提供了76种等待类型来提供等待报告,SQL Server 2005提供了多余100个等待类型来跟踪应用程序性能,SQL Server 2005性能排错(5),任何时间1个用户连接在等待时,SQL Server会累加等待时间,你需要获取数据,用于以后

使用SQL waits阻塞对整体性能的影响

SQL Server 2000提供了76种等待类型来提供等待报告。SQL Server 2005提供了多余100个等待类型来跟踪应用程序性能。任何时间1个用户连接在等待时,SQL Server会累加等待时间。例如应用程序请求资源例如I/O,锁或内存,可以等待资源直到可用。这些等待信息可以跨所有连接将被汇总和分类,所以性能配置可以从给定的负载获得。因此,SQL等待类型从应用程序负载或用户观点识别和分类用户(或线程)等待。

这个查询列出了在SQL Server中前10位的等待。这些等待时累积的,但是你可以使用DBCC SQLPERF ([sys.dm_os_wait_stats], clear)重置这个计数器。

select top 10 *
from sys.dm_os_wait_stats
order by wait_time_ms desc

下列是输出,要注意几个关键点:

◆一些等待是正常的例如后台线程的等待,例如lazy writer组件。

◆一些会话为获取共享锁等待很长时间

◆信号等待是在一个工作线程获取对资源访问到它被拿到CPU上调度执行这段时间。长时间的信号等待也许意味着很高的CPU争用。

wait_type   waiting_tasks_count wait_time_ms   max_wait_time_ms signal_wait_time_ms 
------------------ -------------------- -------------------- -------------------- -------
LAZYWRITER_SLEEP   415088        415048437      1812         156
SQLTRACE_BUFFER_FLUSH 103762        415044000      4000         0
LCK_M_S        6          25016812       23240921       0
WRITELOG       7413         86843        187         406
LOGMGR_RESERVE_APPEND 82          82000        1000         0
SLEEP_BPOOL_FLUSH   4948         28687        31          15
LCK_M_X        1          20000        20000        0
PAGEIOLATCH_SH    871         11718        140         15
PAGEIOLATCH_UP    755         9484         187         0
IO_COMPLETION     636         7031         203         0

为了分析等待状态,你需要获取数据,用于以后分析。附录B提供了2个示例的存储过程。

1 2 3 4 5 6  下一页

Tags:SQL Server 性能

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接