2012.09.21 02:47
Mysql에서 log-slow-queries 로그 남기기
사용방법은 my.cnf 파일 안에 [mysqld] 탭에 아래 내용을 기록하면 됩니다.
log-slow-queries=[로그경로]
long_query_time=[기록기준시간]
예)
[mysql]
long_query_time=5
log-slow-queries=/var/log/mysql-slow-query.log
파일 권한을 mysql 권한으로 변경해줍니다.
# chown mysql:mysql /var/log/mysql-slow-query.log
Slow Query log 를 활성화 하면 long_query_time 에 정해진 시간을 초과하는 쿼리에 대해서는
log-slow-queries 에 설정된 결로로 로그를 남기게 됩니다.
주기적으로 확인을 하여 성능이 떨어지는 쿼리를 분석 할 수 있습니다.
Query_time : 쿼리 수행시간
Lock_time : 테이블 LOCK 이 걸린시간
Row_sent : 쿼리 처리 결과 ROW 수
Rows_examined : 쿼리 처리대상의 ROW 수
기록된 내용중 위 내용과 쿼리를 분석하면 됩니다
쿼리의 분석 방법은 EXPLAIN 을 이용하여 분석을 하면 됩니다.
explain 을 사용하여 체크
(사용법)
EXPLAIN tbl_name
or EXPLAIN SELECT select_options