본문으로 건너뛰기

락 트리 & 데드락

하루 동안 발생한 Lock의 추이를 분석할 수 있습니다. Lock을 발생시킨 세션(Lock Holder)과 Lock을 대기하고 있는 세션(Lock Waitier)에 대해 트리 구조로 확인할 수 있습니다. 이러한 기능을 통해 특정 시점 발생한 락 정보 Holder와 Waiter 관계를 확인해 쿼리(Query)를 분석하고 교착 상태(Dead Lock)의 쿼리를 확인할 수 있습니다.

락 트리

홈 화면 > 프로젝트 선택 > 분석 > 락 트리

하루 동안의 락 발생 여부와 시간을 시계열 차트/락 트리로 제공합니다. 락이 최초 발생한 지점부터 holder와 waiter의 구조를 트리 형태로 표현하여 제공합니다. 락 트리를 시간의 흐름으로 확인할 수 있습니다.

  • 시간별 락 트렌드 시각화: 1-Min Lock TrendsLock Wait Sessions 기능을 통해 락 발생 데이터를 시간 단위로 분석할 수 있습니다.

기본 사용 안내

Lock tree

원하는 숫자 1 날짜와 시간을 설정한 다음 숫자 2 목록에서 인스턴스를 선택하세요. 설정한 시간에 락이 발생했다면 lock wait sessions와 화면 아래 테이블에 조회한 데이터를 표시합니다.

노트

시간 옵션 이용 방법에 대한 자세한 내용은 다음 문서를 참조하세요.

Lock Wait Sessions

Lock Wait Sessions는 락 대기 세션의 정보를 분석할 수 있는 기능입니다. 조회 기간에 따라 락 대기 세션 데이터를 3시간 이상 조회 시 5분 간격으로, 3시간 미만 조회 시 5초 간격으로 제공합니다. 또한 차트를 드래그하여 시간 범위를 유동적으로 조정할 수 있습니다.

1-Min Lock Trends

Lock Wait Sessions에서 특정 시간대를 클릭하면, 해당 시간 기준으로 15분 전부터 15분 후까지의 총 30분 동안의 락 발생 현황을 시각화하여 표시합니다. 이를 통해 30분 단위로 락 발생 트렌드를 효과적으로 분석할 수 있습니다.

노트

Total Locks는 해당 시간대에 발생한 락의 총 개수를 의미합니다.

시간 조회

Lock Wait Sessions에서 클릭한 시간에 발생한 최대 락 개수를 기준으로 1-Min Lock TrendsLock Tree 테이블의 시간이 설정됩니다. 이를 통해 락이 가장 많이 발생한 구간을 찾을 수 있습니다.

시간 조회1

Lock Wait Sessions는 그대로 두고 1-Min Lock Trends 차트에서 다른 시간대의 바를 클릭한 경우, 해당 분의 최대 락 개수를 가진 초로 Lock Tree 테이블에 시간 범위가 동기화됩니다. 이를 통해 시간대를 변경할 때 Lock Tree 테이블에서 반영된 정보를 확인할 수 있습니다.

시간 조회2

  • 3시간 이상 조회 시 (5분 단위 데이터 사용)

    조회 시점부터 5분 구간에서 바의 색상이 진하게 표시됩니다.

    07:15:00 시점을 클릭한 경우, 07:15:00~07:20:00 구간 바 차트 색이 진하게 표시됩니다.

    5분 팩 조회

  • 3시간 미만 조회 시 (5초 단위 데이터 사용)

    짧은 시간 간격에서 발생한 락 상황을 분석할 때 유용합니다.

    5초 팩 조회

항목설명
Instance Name인스턴스 명
idconnection 식별자
userSQL 수행 계정
host이 스레드가 연결된 hostname
dbdefault database명, 없다면 NULL
command수행 중인 명령어 type(Query/Sleep/Daemon 등)
time현재 COMMAND의 수행 시간(초)
state스레드의 현재상태 (executing/updating/sending data 등)
query실행되고 있는 statement, Processlist.info에서 리터럴 값을 분리한 SQL을 보여줍니다.
query_paramquery에서 분리한 리터럴 값
typeThread 타입. FOREGROUND/BACKGROUND 등
connection_typeConnection을 맺는데 사용하는 protocol. TCP/IP, SSL/TLS

데드락

홈 화면 > 프로젝트 선택 > 분석 > 데드락

데드락(Dead Lock)은 둘 이상의 프로세스 또는 트랜잭션이 각각 다른 트랜잭션에 필요한 데이터베이스 리소스(테이블 또는 행)를 잠궈서 서로가 진행하지 못하도록 차단할 때 발생합니다. 빈번하게 발생하는 데드락은 최종 사용자에게 불편함을 주고 서비스의 품질을 저하시킵니다. 데드락 메뉴에서는 데드락이 발생한 시점과 이와 관련한 정보를 조회할 수 있습니다. 이 정보는 얘플리케이션 설계에서 문제를 식별하고 해결하는데 도움이 될 수 있습니다.

데드락

데이터베이스에서 발생한 데드락에 대한 정보를 확인할 수 있습니다.

  1. 시간에서 조회하고 싶은 시간을 설정하세요.

  2. 인스턴스에서 조회하려는 인스턴스 이름을 선택하세요.

  3. 검색 아이콘 버튼을 선택하세요.

조회한 데드락 정보를 테이블 형태로 제공합니다.

노트
  • 조회 시간은 최대 3주까지 선택할 수 있습니다.

  • 시간 옵션 이용 방법에 대한 자세한 내용은 다음 문서를 참조하세요.