MYSQL SQL 통계
홈 화면 > 프로젝트 선택 > 통계/보고서 > MYSQL SQL 통계
MySQL의 performance_schema
에서 제공하는 SQL 통계 데이터(수행 횟수, 실행 시간, Row 수 등)로 performance_schema.events_statements_summary_by_digest
뷰를 통해 수집합니다.
-
이 기능은 DBX 에이전트 1.6.10 버전 이상에서 지원합니다.
-
events_statements_summary_by_digest
뷰에 대한 자세한 내용은 다음 링크를 참조하세요.
사용하기 전에
MYSQL SQL 통계 메뉴를 사용하기 위해서는 모니터링 대상 DB에서 다음과 같은 설정이 필요합니다.
-
데이터베이스 설정(my.cnf)에서 Performance Schema를 활성화하세요.
my.cnfperformance_schema = on
-
모니터링 계정에서 해당 데이터를 읽을 수 있도록 조회 권한을 설정하세요.
grant select on performance_schema.* to whatap;
-
DBX 에이전트에 옵션을 설정하세요.
whatap.confstatements=true
1시간 간격으로 events_statements_summary_by_digest
로부터 델타값을 계산하여 수집합니다. 따라서 설정 후 1시간 뒤부터 수집을 시작합니다.
기본 화면 안내
-
시간에서 데이터를 조회할 시간과 날짜를 선택하세요. 녹색 버튼을 선택해 조회 시간을 선택할 수도 있습니다.
-
인스턴스에서 데이터를 조회할 대상을 선택하세요.
-
버튼을 선택하세요.
상위 50건의 내용을 테이블에 표시합니다.
-
임의의 날짜와 시간을 조회하려면 시계 표시 부분을 선택하세요. 날짜와 시간 텍스트 영역을 클릭하면 날짜와 시간을 선택할 수 있는 옵션이 나타납니다.
-
테이블 헤더의 각 컬럼을 클릭하면 선택한 컬럼을 기준으로 목록을 정렬할 수 있습니다.
-
정렬 순서에서 선택한 항목 따라 조회 결과를 정렬할 수 있습니다. 원하는 항목을 선택한 다음
버튼을 선택하세요.
-
조회 건수에서 테이블에 표시할 건 수를 설정할 수 있습니다. 설정을 완료한 다음
버튼을 선택하세요.
-
조회한 내용을 CSV 형식의 파일로 다운받으려면
버튼을 선택하세요.
-
조회된 결과 목록에서 query 항목을 선택하면 SQL 상세 창이 나타납니다. 자세한 내용은 다음 문서를 참조하세요.
컬럼 정보 안내
필드명 | 설명 |
---|---|
digest_text | SQL 문 |
digest | digest_text 의 해시값 |
schema_name | 스키마 명 |
count_star | 실행 횟수 |
timer_wait | 전체 수행시간(초) |
lock_time | 테이블락으로 인한 대기 시간(초) |
rows_affected | 영향받은 row 수(insert, update, replace 구문) |
rows_sent | 리턴된 row 수 |
rows_examined | server layer에서 검토된 row 수 |
created_tmp_disk_tables | 명령문을 실행하는 동안 서버가 작성한 디스크 임시 테이블 수의 합, 횟수가 높으면 sort 메모리 크기 증설을 고려하세요. |
created_tmp_tables | 명령문을 실행하는 동안 서버가 작성한 내부 임시 테이블 수의 합 |
select_full_join | 인덱스를 사용하지 않은 table scan 수, 0이 아니라면 인덱스 확인이 필요합니다. |
select_full_range_join | 참조 테이블에서 range 검색을 사용한 조인(join) 수 |
select_range | 첫 번째 테이블에서 range를 사용한 조인(join) 수 |
select_range_check | key가 없이 조인(join)이 발생한 수, 0이 아니라면 확인이 필요합니다. |
select_scan | Driving 테이블을 full 스캔한 수 |
sort_merge_passes | sort merge로 sort된 수 |
sort_range | range로 sort된 수 |
sort_rows | sort 수행된 row 수 |
sort_scan | 스캔으로 sort된 수 |
no_index_used | 쿼리에서 어떤 인덱스도 사용하지 않은 횟수, 인덱스 생성에 대한 고려가 필요합니다. |
no_good_index_used | 서버에 존재하는 기존 인덱스 중 사용할 어떤 인덱스도 찾지 못한 횟수, 횟수가 증가하면 인덱스 점검이 필요합니다. |
쿼리 미리보기
조회된 결과 목록에서 마우스 포인터를 sql 컬럼 항목으로 가져가면 쿼리문을 미리볼 수 있습니다.