실행 중인 스레드로 인해 발생한 대기에 대한 정보를 확인하려면 sys.dm_os_wait_stats 동적 관리 뷰를 사용합니다. 이 뷰는 SQL Server 와 관련된 성능 문제뿐 아니라 특정 쿼리 및 일괄 처리와 관련된 성능 문제의 진단에도 도움이 됩니다. 각 대기 유형별 대기 시간을 확인하여, 가장 대기가 많은 유형을 확인하고, 작업 부하에 따른 대기 유형의 변화도 확인합니다.
시스템의 대기 정보 확인하기 |
SELECT * FROM sys.dm_os_wait_stats ORDER BY wait_time_ms DESC; GO |
래치 대기 정보 확인하기 |
SELECT * FROM sys.dm_os_latch_stats; GO |
대기 통계, 래치 대기 통계 재설정하기 |
DBCC SQLPERF('sys.dm_os_wait_stats', CLEAR); GO DBCC SQLPERF('sys.dm_os_latch_stats', CLEAR); GO |
I/O 대기 확인하기 |
SELECT database_id , file_id , io_stall,io_pending_ms_ticks , scheduler_address FROM sys.dm_io_virtual_file_stats (NULL, NULL) AS t1, sys.dm_io_pending_io_requests AS t2 WHERE t1.file_handle = t2.io_handle; GO SELECT * FROM sys.dm_io_virtual_file_stats (NULL, NULL); GO SELECT * FROM sys.dm_io_pending_io_requests; GO |
I/O 할당 대기 확인하기 |
-- Tempdb (DBID=2) SELECT session_id, wait_duration_ms, resource_description FROM sys.dm_os_waiting_tasks WHERE wait_type LIKE 'PAGE%LATCH_%' AND resource_description LIKE '2:%'; GO -- 사용자 DB (다음에서 dbid 부분을 db_id() 값을 입력하여 실행하면 됨 ) SELECT session_id, wait_duration_ms, resource_description FROM sys.dm_os_waiting_tasks WHERE wait_type LIKE 'PAGE%LATCH_%' AND resource_description LIKE '5:%'; GO |
'연구개발 > SQL2005' 카테고리의 다른 글
[SQL 2005 GUIDE] 동적 관리 뷰 활용 - 쿼리 실행 확인하기 (0) | 2009.07.22 |
---|---|
[SQL 2005 GUIDE] 동적 관리 뷰 활용 - 실행중인 프로세스 확인하기 (0) | 2009.07.21 |
[SQL 2005 GUIDE] 관리자 전용 연결 (DAC) (0) | 2009.07.21 |
[SQL 2005 GUIDE] DDL 트리거 정보 확인하기 (0) | 2009.07.21 |
[SQL 2005 GUIDE] DDL 트리거 생성하기 (0) | 2009.07.21 |