1. 메모리 덤프를 crash dump 파일 방식으로 실행 합니다.
2. 명령 창에 관련 symbols 파일을 받습니다. ( 파일 열어 보면 명령창 입력 하는 부분이 있습니다. )
sympath srv*C:\PublicSymbols*http://msdl.microsoft.com/download/symbols; <- C 밑에 받게 설정.
3. Symbols 파일을 내려 받습니다.
.reload /f sqlservr.exe ß-- sql 지정해 주지 않으면 모든 실행파일에 대한 것 받습니다 오래 걸립니다. 허나 제 컴이 2012만 설치되어 있어서 서버 버전과 같은 sql이 있어야 할 것 같은 느낌 입니다.
4. 문제되는 스래드 를 파악 해 봅니다. ^^
~~[스래드번호]s
아래 노란색이 스래드 번호 입니다.
2014-10-31 07:07:06.960 서버 Process 0:0:0 (0x3318) Worker 0x000000002A7EA1A0 appears to be non-yielding on Scheduler 22. Thread creation time: 13059177216471. Approx Thread CPU Used: kernel 0 ms, user 70543 ms. Process Utilization 30%. System Idle 68%.
5. 자세한 내역을 봅니다.
kL100
15번 파일을 그런 단계로 본 내역입니다. Call site 값으로 세부적으로 뭔가 봐야 하는데 그 다음 명령을 모르겠습니다.
6. 참고로
.cxr sqlservr!CXStmtQuery::ErsqExecuteQuery+0x602 이 노란색이 call site 값인 것 같은데요..
7. 아래 부분 처럼
du 0x00000101`c21ae200 L100 이게 쿼리 내역을 보는 법인 것 같습니다. RetAddr 값 일까요??? ㅋㅋ.
답변 받은 분도 명령창 번호가 같은걸로 봐서는 15번 덤프 파일을 가지고 분석 했습니다
참고로 ) 여러가지 원인이 있다는 Non-yielding Scheduler dump 내역 입니다.
http://technet.microsoft.com/en-us/library/cc917684.aspx#XSLTsection129121120120
'ETC' 카테고리의 다른 글
MS-SQL 2016 New Features (0) | 2017.02.24 |
---|---|
SQL Server 2012 Certification upgrade info (0) | 2015.05.20 |
Windbg 명령어 & 설치 (0) | 2014.11.06 |
Window 서비스 등록/삭제 방법 (0) | 2011.10.20 |