안녕하세요,

베스핀글로벌 클라우드 기술지원팀입니다.


이번 아티클에서는 Amazon RDS for MariaDB에서 Slow Query Log를 설정하는 방법에 대하여 안내해 드리고자 합니다.



느린 쿼리 로그(Slow Query Log)는 수행하는 데 오랜 시간이 걸린 SQL 쿼리의 기록이며,

해당 쿼리를 찾아내어 DB 인스턴스의 지연 시간 등의 이슈를 해결할 수 있습니다.




1. Slow Query Log 활성화


느린 쿼리 로그는 기본적으로 비활성화되어 있습니다.

활성화하기 위해서는 slow_query_log 시스템 변수를 1로 설정해야합니다.

SET GLOBAL slow_query_log=1;



2. Slow Query Log 파일 이름 구성


기본적으로 느린 쿼리 로그는 datadir 디렉토리에서 ${hostname}-slow.log에 기록됩니다.

아래 slow_query_log_file 시스템 변수의 설정을 통해 파일 이름을 변경할 수 있습니다.

SET GLOBAL slow_query_log_file='mariadb-slow.log';



3. Slow Query Log 출력 대상 선택


느린 쿼리 로그는 기본적으로 디스크의 파일에 쓰거나 mysql 데이터베이스의 slow_log 테이블에 쓸 수 있습니다.

아래 log_output 시스템 변수의 설정을 통해 출력 대상을 선택할 수 있습니다.


- FILE

느린 쿼리 로그는 기본적으로 파일로 출력됩니다.

log_output 시스템 변수를 FILE로 설정하여 명시적으로 선택할 수 있습니다.

SET GLOBAL log_output='FILE'; 

- TABLE

log_output 시스템 변수를 TABLE로 설정하여 mysql 데이터베이스의 slow_log 테이블에 쓸 수 있습니다.

SET GLOBAL log_output='TABLE';



4. Slow Query Log 비활성화


MariaDB 10. 1 이상에서 slow_query_log 시스템 변수를 0으로 설정하여 느린 쿼리 로그를 비활성화할 수 있습니다.

SET SESSION slow_query_log=0;



5. Slow Query Log 시간 구성


long_query_time 시스템 변수를 설정하여 느린 쿼리 정의 시간을 구성할 수 있습니다.

기본 값은 10이며, log_output = FILE인 경우에 마이크로 초 단위까지 소수점 값을 지정할 수 있습니다.


log_output = TABLE인 경우에는 초 단위로 정수 값을 지정해야 합니다.

SET GLOBAL long_query_time=5.0;



참조 링크:

#1 MairaDB Slow Query Log -

https://mariadb.com/kb/en/slow-query-log-overview/



관련하여 문의사항이 있으시거나 지원이 필요하시면

언제든지 저희 고객지원센터를 통해 문의 남겨주시기 바랍니다.


감사합니다.