RDB/MySQL

mysql8.0 lock 확인

세모데 2022. 9. 19. 17:49

mysql8.0은 lock에 대한 정보를 performace_schema에 data_locks, data_lock_waits 테이블을 사용하여 확인이 가능함

(기존 버전은 information_schema에 innodb_locks, innodb_lock_waits를 통해 확인)

 

SELECT straight_join
   di.THREAD_ID
  , esc.SQL_TEXT
  , di.OBJECT_SCHEMA
  , di.OBJECT_NAME
  , di.INDEX_NAME
  , di.LOCK_TYPE
  , di.LOCK_MODE
  , di.LOCK_STATUS
  , di.LOCK_DATA
FROM
  performance_schema.data_locks di inner join performance_schema.events_statements_current esc on di.THREAD_ID = esc.THREAD_ID
ORDER BY esc.TIMER_START,di.OBJECT_INSTANCE_BEGIN;