22.9.9.6 Table I/O 및 잠금 대기 요약 테이블
다음 섹션에서는 테이블 I/O 및 잠금 대기 요약 테이블에 대해 설명합니다.
table_io_waits_summary_by_index_usage
: 각 인덱스 테이블 I / O 대기table_io_waits_summary_by_table
: 테이블 당 테이블 I / O 대기table_lock_waits_summary_by_table
: 테이블 당 테이블 잠금 대기
22.9.9.6.1 table_io_waits_summary_by_table 테이블
table_io_waits_summary_by_table
테이블은 wait/io/table/sql/handler
instrument에 의해 생성되는 모든 테이블 I / O 대기 이벤트를 집계합니다. 그룹화는 테이블 단위입니다.
table_io_waits_summary_by_table
테이블에는 테이블의 이벤트 집계 방법을 보여주는이 그룹화 컬럼이 있습니다. OBJECT_TYPE
, OBJECT_SCHEMA
및 OBJECT_NAME
. 이 컬럼은 events_waits_current
테이블과 같은 의미를가집니다. 그들은 행의 적용 대상 테이블을 식별합니다.
table_io_waits_summary_by_table
에 집계 된 값을 포함하는 다음의 요약 열 수 있습니다. 컬럼의 설명과 같이 일부 열은 일반적으로 더 상세한 컬럼 값의 합계와 같은 값을가집니다. 예를 들어, 모든 기록을 집계하는 열 삽입, 업데이트 및 삭제를 집계하는 해당 컬럼의 합계를 유지합니다. 이처럼 낮은 수준 칼럼을 총 사용자 정의 뷰를 필요로하지 않고 높은 수준의 통합을 직접 가져올 수 있습니다.
COUNT_STAR
,SUM_TIMER_WAIT
,MIN_TIMER_WAIT
,AVG_TIMER_WAIT
,MAX_TIMER_WAIT
이 컬럼은 모든 I / O 작업을 집계합니다. 그들은 해당
및xxx
_READ
전체 컬럼과 동일합니다.xxx
_WRITECOUNT_READ
,SUM_TIMER_READ
,MIN_TIMER_READ
,AVG_TIMER_READ
,MAX_TIMER_READ
이 컬럼은 모든 읽기 작업을 집계합니다. 그들은 해당
전체 컬럼과 동일합니다.xxx
_FETCHCOUNT_WRITE
,SUM_TIMER_WRITE
,MIN_TIMER_WRITE
,AVG_TIMER_WRITE
,MAX_TIMER_WRITE
이 컬럼은 모든 쓰기 작업을 집계합니다. 그들은 해당
,xxx
_INSERT
및xxx
_UPDATE
전체 컬럼과 동일합니다.xxx
_DELETECOUNT_FETCH
,SUM_TIMER_FETCH
,MIN_TIMER_FETCH
,AVG_TIMER_FETCH
,MAX_TIMER_FETCH
이 컬럼은 모든 반입 작업을 집계합니다.
COUNT_INSERT
,SUM_TIMER_INSERT
,MIN_TIMER_INSERT
,AVG_TIMER_INSERT
,MAX_TIMER_INSERT
이 컬럼은 모든 삽입을 집계합니다.
COUNT_UPDATE
,SUM_TIMER_UPDATE
,MIN_TIMER_UPDATE
,AVG_TIMER_UPDATE
,MAX_TIMER_UPDATE
이 컬럼은 모든 업데이트 작업을 집계합니다.
COUNT_DELETE
,SUM_TIMER_DELETE
,MIN_TIMER_DELETE
,AVG_TIMER_DELETE
,MAX_TIMER_DELETE
이 컬럼은 모든 제거 작업을 집계합니다.
TRUNCATE TABLE
은 테이블 I / O 요약 테이블에 사용할 수 있습니다. 그것은 행을 삭제하는 것이 아니라 요약 컬럼을 0으로 재설정합니다. 이 테이블을 자르면 table_io_waits_summary_by_index_usage
테이블도 잘립니다.
22.9.9.6.2 table_io_waits_summary_by_index_usage 테이블
table_io_waits_summary_by_index_usage
테이블은 wait/io/table/sql/handler
instrument에 의해 생성되는 모든 테이블 인덱스 I / O 대기 이벤트를 집계합니다. 그룹화는 테이블 인덱스 단위입니다.
table_io_waits_summary_by_index_usage
의 구조는 table_io_waits_summary_by_table
와 거의 동일합니다. 유일한 차이점은 테이블 I / O 대기 이벤트가 기록 될 때 사용 된 인덱스의 이름에 해당하는 추가 그룹 컬럼 INDEX_NAME
입니다.
PRIMARY
값은 테이블 I / O에서 기본 인덱스가 사용 된 것을 나타냅니다.NULL
값은 테이블 I / O에서 인덱스가 사용되지 않았 음을 나타냅니다.삽입
INDEX_NAME = NULL
에 대해 계산됩니다.
TRUNCATE TABLE
은 테이블 I / O 요약 테이블에 사용할 수 있습니다. 그것은 행을 삭제하는 것이 아니라 요약 컬럼을 0으로 재설정합니다. 이 테이블도 table_io_waits_summary_by_table
테이블 자르면 잘립니다. 테이블의 색인 구조를 변경하는 DDL 조작에 의해 각 인덱스의 통계가 재설정 될 수 있습니다.
22.9.9.6.3 table_lock_waits_summary_by_table 테이블
table_lock_waits_summary_by_table
테이블은 wait/lock/table/sql/handler
instrument에 의해 생성되는 모든 테이블 잠금 대기 이벤트를 집계합니다. 그룹화는 테이블 단위입니다.
이 테이블에는 내부 및 외부 잠금에 대한 정보가 포함됩니다.
내부 잠금은 SQL 레이어의 잠금을 지원합니다. 이것은 현재
thr_lock()
를 호출하여 구현됩니다. 이벤트 행에서 이러한 잠금은 다음 중 하나의 값을 가지는OPERATION
컬럼에 의해 구별됩니다.read normal read with shared locks read high priority read no insert write allow write write concurrent insert write delayed write low priority write normal
외부 잠금 스토리지 엔진 레이어의 잠금을 지원합니다. 이것은 현재
handler::external_lock()
를 호출하여 구현됩니다. 이벤트 행에서 이러한 잠금은 다음 중 하나의 값을 가지는OPERATION
컬럼에 의해 구별됩니다.read external write external
table_lock_waits_summary_by_table
테이블에는 테이블의 이벤트 집계 방법을 보여주는이 그룹화 컬럼이 있습니다. OBJECT_TYPE
, OBJECT_SCHEMA
및 OBJECT_NAME
. 이 컬럼은 events_waits_current
테이블과 같은 의미를가집니다. 그들은 행의 적용 대상 테이블을 식별합니다.
table_lock_waits_summary_by_table
에 집계 된 값을 포함하는 다음의 요약 열 수 있습니다. 컬럼의 설명과 같이 일부 열은 일반적으로 더 상세한 컬럼 값의 합계와 같은 값을가집니다. 예를 들어, 모든 잠금을 집계하는 열은 읽기 및 쓰기 잠금을 집계하는 해당 컬럼의 합계를 유지합니다. 이처럼 낮은 수준 칼럼을 총 사용자 정의 뷰를 필요로하지 않고 높은 수준의 통합을 직접 가져올 수 있습니다.
COUNT_STAR
,SUM_TIMER_WAIT
,MIN_TIMER_WAIT
,AVG_TIMER_WAIT
,MAX_TIMER_WAIT
이 컬럼은 모든 잠금 작업을 집계합니다. 그들은 해당
및xxx
_READ
전체 컬럼과 동일합니다.xxx
_WRITECOUNT_READ
,SUM_TIMER_READ
,MIN_TIMER_READ
,AVG_TIMER_READ
,MAX_TIMER_READ
이 컬럼은 모든 읽기 잠금 작업을 집계합니다. 그들은 해당
,xxx
_READ_NORMAL
,xxx
_READ_WITH_SHARED_LOCKS
및xxx
_READ_HIGH_PRIORITY
전체 컬럼과 동일합니다.xxx
_READ_NO_INSERTCOUNT_WRITE
,SUM_TIMER_WRITE
,MIN_TIMER_WRITE
,AVG_TIMER_WRITE
,MAX_TIMER_WRITE
이 컬럼은 모든 쓰기 잠금 작업을 집계합니다. 그들은 해당
,xxx
_WRITE_ALLOW_WRITE
,xxx
_WRITE_CONCURRENT_INSERT
,xxx
_WRITE_DELAYED
및xxx
_WRITE_LOW_PRIORITY
전체 컬럼과 동일합니다.xxx
_WRITE_NORMALCOUNT_READ_NORMAL
,SUM_TIMER_READ_NORMAL
,MIN_TIMER_READ_NORMAL
,AVG_TIMER_READ_NORMAL
,MAX_TIMER_READ_NORMAL
이러한 열은 내부 읽기 잠금을 집계합니다.
COUNT_READ_WITH_SHARED_LOCKS
,SUM_TIMER_READ_WITH_SHARED_LOCKS
,MIN_TIMER_READ_WITH_SHARED_LOCKS
,AVG_TIMER_READ_WITH_SHARED_LOCKS
,MAX_TIMER_READ_WITH_SHARED_LOCKS
이러한 열은 내부 읽기 잠금을 집계합니다.
COUNT_READ_HIGH_PRIORITY
,SUM_TIMER_READ_HIGH_PRIORITY
,MIN_TIMER_READ_HIGH_PRIORITY
,AVG_TIMER_READ_HIGH_PRIORITY
,MAX_TIMER_READ_HIGH_PRIORITY
이러한 열은 내부 읽기 잠금을 집계합니다.
COUNT_READ_NO_INSERT
,SUM_TIMER_READ_NO_INSERT
,MIN_TIMER_READ_NO_INSERT
,AVG_TIMER_READ_NO_INSERT
,MAX_TIMER_READ_NO_INSERT
이러한 열은 내부 읽기 잠금을 집계합니다.
COUNT_READ_EXTERNAL
,SUM_TIMER_READ_EXTERNAL
,MIN_TIMER_READ_EXTERNAL
,AVG_TIMER_READ_EXTERNAL
,MAX_TIMER_READ_EXTERNAL
이 컬럼은 외부 읽기 잠금을 집계합니다.
COUNT_WRITE_ALLOW_WRITE
,SUM_TIMER_WRITE_ALLOW_WRITE
,MIN_TIMER_WRITE_ALLOW_WRITE
,AVG_TIMER_WRITE_ALLOW_WRITE
,MAX_TIMER_WRITE_ALLOW_WRITE
이러한 열은 내부 기입 락을 집계합니다.
COUNT_WRITE_CONCURRENT_INSERT
,SUM_TIMER_WRITE_CONCURRENT_INSERT
,MIN_TIMER_WRITE_CONCURRENT_INSERT
,AVG_TIMER_WRITE_CONCURRENT_INSERT
,MAX_TIMER_WRITE_CONCURRENT_INSERT
이러한 열은 내부 기입 락을 집계합니다.
COUNT_WRITE_DELAYED
,SUM_TIMER_WRITE_DELAYED
,MIN_TIMER_WRITE_DELAYED
,AVG_TIMER_WRITE_DELAYED
,MAX_TIMER_WRITE_DELAYED
이러한 열은 내부 기입 락을 집계합니다.
MySQL 5.6.6 이후
DELAYED
삽입 비추천이기 때문에 이러한 열은 향후 릴리스에서 제거됩니다.COUNT_WRITE_LOW_PRIORITY
,SUM_TIMER_WRITE_LOW_PRIORITY
,MIN_TIMER_WRITE_LOW_PRIORITY
,AVG_TIMER_WRITE_LOW_PRIORITY
,MAX_TIMER_WRITE_LOW_PRIORITY
이러한 열은 내부 기입 락을 집계합니다.
COUNT_WRITE_NORMAL
,SUM_TIMER_WRITE_NORMAL
,MIN_TIMER_WRITE_NORMAL
,AVG_TIMER_WRITE_NORMAL
,MAX_TIMER_WRITE_NORMAL
이러한 열은 내부 기입 락을 집계합니다.
COUNT_WRITE_EXTERNAL
,SUM_TIMER_WRITE_EXTERNAL
,MIN_TIMER_WRITE_EXTERNAL
,AVG_TIMER_WRITE_EXTERNAL
,MAX_TIMER_WRITE_EXTERNAL
이 컬럼은 외부 기입 락을 집계합니다.
TRUNCATE TABLE
은 테이블 잠금 요약 테이블에 사용할 수 있습니다. 그것은 행을 삭제하는 것이 아니라 요약 컬럼을 0으로 재설정합니다.