본문 바로가기

DeadLock

Microsoft SQL Server CPU 경합 방지 옵션 SQL 서버를 운영하다 보면 개발 머신이 아닌 경우, 대부분의 서버에서 멀티 CPU 시스템을 사용하게 된다. 당연히 CPU 가 많은 경우가 CPU 가 적은 경우보다 빠르겠지만, 그렇지 않은 경우가 몇가지 있는데, 병렬 처리로 인한 Deadlock 발생, 그리고 동일한 자원의 사용을 위한 경합에 의한 장애가 발생하는 경우이다. 먼저 CPU 의 병렬 처리로 인한 Deadlock 은 아래를 참고... http://masterjoe.tistory.com/entry/Deadlock-의-진단과-해결 CPU Core 의 개수에 준하게 TempDB 의 파일을 만든다. 그리고 일반적으로 해야 하는 설정이지만, 빼먹는 설정이 바로.... Temp DB 의 설정이다. 일단 설정의 방법 부터 알아 보자. 1. 각 서버의 CP.. 더보기
Deadlock 의 진단과 해결 RDBMS 에서 Deadlock 이라는 단어가 종종 등장한다. 대부분의 DB 안내서에 자주 등장하는 이야기 지만.. 의외로 해당 문제 때문에 trouble shooting 을 수행하여야 하는 경우는 드뭅니다. 대부분의 dealock 이 개발 단계에서 탐지되고, 수정되기 때문이죠. 그렇다면, 여기서 '대부분' 이라는 키워드를 사용하는 경우는 어떤 경우이며, '대부분' 에 포함되지 않는 예외 Case 는 어떤 것들이 있는지, 그리고 그에 대한 해결은 어떻게 접근하는지에 대하여 생각해 보기로 하겠습니다.. Deadlock 의 정의에 대해서는 따로 설명하지 않겠습니다. 정의는 적당한 문서가 많이 있습니다.. Deadlock 의 탐지 1. SQL 이벤트 2. 과도한 CPU 의 사용 3. 작업 모니터에 CXPack.. 더보기