AWS RDS (MariaDB) Query Trace

윤상훈·2022년 4월 13일
0

RDS를 사용한다면 파라미터 그룹을 통해 Slow Query에 대한 정보를 수집 할 수 있다.

아래와 같이 파라미터의 값을 수정한다.

Slow_query_log = 1
log_output = FILE (또는 TABLE)
long_query_time = 10 (초)
optimizer_trace = enabled=on
optimizer_trace_max_mem_size = 1048576

파라미터 탭에서 로그 탭으로 이동한 뒤,
slow라고 검색하면 날짜별 버전별 로그파일이 생성된다.
2kb이상인 파일을 찾아보면 위 파라미터 long_query_time에서
설정한 것과 같이 약 12초 이상 걸린 쿼리가 나타난다. (SELECT 이하)

1. EXPLAIN SELECT ~~~~ FROM ~~~~~;

2. SELECT * FROM information_schema.optimizer_trace LIMIT 1;

EXPLAIN을 SELECT 상단에 추가하여 위 쿼리를 실행하면
OPTIMIZER에 의해 선택된 키와 검토된 ROW의 수 등의 정보가 나온다.

2번 쿼리를 실행해보면 상세 정보가 JSON으로 출력되는 것을 확인 할 수 있다.


출처: https://mariadb.com/kb/en/optimizer-trace-guide/

profile
데이터를 사랑하는 개발자

0개의 댓글