Linux DB

MYSQL의 질의 속도를 튜닝하다보면 MYSQL의 질의에 대한 응답속도가 현저하게 떨어지거나 MYSQL 데이터베이스와 연동되는 특정 어플리케이션이 시스템자원을 현저하게 많이 차지하는 등의 문제가 발생할 수 있습니다. 이 문제를 해결하기 위해 SLOW 로그에서 어떤 프로그램이 문제를 일으키는지에 대한 확인이 가능합니다.


SLOW 로그는 MYSQL의 환경변수인 "long_query_time" 의 설정시간 (초 단위) 이상의 쿼리 시간을 가지는 특정 SQL 쿼리문에 대한 로그만을 기록하는 로그파일입니다. 따라서 SLOW 로그파일을 활용하면 어떤 프로그램이 쿼리시간을 많이 차지하는가를 확인 할 수 있습니다. 즉 어느날 갑자기 MYSQL의 응답속도가 현저하게 떨어졌다면 SLOW 로그로 쿼리 응답속도가 일정시간 지속되는 쿼리문을 찾아서 조치하면 됩니다.


다음은 예시입니다.


[root@host data]#/usr/local/mysql/bin/mysqld_safe --log-slow-quaries=SLOW_QUERY_LOG &

[1] 4228


이 예시에서 SLOW 로그파일명으로 SLOW_QUERY_LOG 라고 지정하였기 때문에 /usr/local/mysql/data 디렉토리에는 SLOW_QUERY_LOG 라고 지정하였기 때문에 /usr/local/mysql/data/ 디렉토리에는 SLOW_QUERY_LOG 라는 파일명이 생성되어 SLOW 쿼리로그를 기록하게 됩니다.


다음 예시는 해당 SLOW 로그 파일을 확인하는 과정입니다.


[root@host data]#ls -l /usr/loca/mysql/data/SLOW_QUERY_LOG

-rw-rw---- 1 mysql 179 9월 15일 15:42 /usr/local/mysql/data/SLOW_QUERY_LOG


위에 표시된 "SLOW_QUERY_LOG" 파일에는 MYSQL의 환경변수 "long_query_time" 에 초단위로 지정된 시간보다 초과하는 쿼리문만 기록합니다.


다음 예시는 MYSQL의 환경변수 "long_query_time"의 값을 확인하는 방법입니다.


[root@host bin]#./mysqladmin -uroot -p variables | grep long_query_time

Enter password: *********

| long_query_time           | 10.000000


결과를 보면 "long_query_time"이 10초로 설정되어 있는 것을 볼 수 있습니다. 물론 이 값은 변경도 가능합니다.


번호 제목 글쓴이 날짜 조회 수
45 innodb 설치 및 옵션 호스트웨이 2014.04.14 23351
44 MySQL에서 Query Cache 사용하기 호스트웨이 2012.12.20 7085
43 mysql-5.5.x 에서 character-set 변경 호스트웨이 2012.12.07 7199
42 phpmyadmin에서 'mcrypt 확장모듈을 불러올 수 없습니다' 에러 시 file 호스트웨이 2012.11.29 6656
41 [MySQL] 무한정 늘어나는 log-bin 파일 줄이기 호스트웨이 2012.11.23 7050
40 [MySQL] 쿼리 한 번으로 데이터베이스 용량 알아내기 file 호스트웨이 2012.11.16 7151
39 mysql 4.0 에서 4.1 다운그레이드 호스트웨이 2012.11.01 6615
38 Client does not support authentication protocol requested by server 메시지 발생 시 호스트웨이 2012.10.18 7603
37 MySQL 설치 시 checking "LinuxThreads"… "Not found" 에러 발생 시 호스트웨이 2012.09.21 11308
36 Mysql에서 log-slow-queries 로그 남기기 호스트웨이 2012.09.21 6808
35 Mysql - mysqldump시 LOCK TABLES 오류 호스트웨이 2012.09.07 25031
34 리눅스에서 MYSQL 데이터 디렉토리 변경 호스트웨이 2012.08.31 20791
33 Mysql slow-query를 이용한 로그 분석 호스트웨이 2012.08.10 27658
32 Mysql - 원격 접속 지연 발생시 호스트웨이 2012.08.03 14013
31 mysql 로그 삭제하기 호스트웨이 2012.07.20 11488
30 MySQL 원격 접속이 이뤄지지 않는다면? 호스트웨이 2012.07.13 10736
29 Mysql banchmark tool – sysbanch 설치하기 호스트웨이 2012.07.06 11543
28 MySQL 테이블 구조만 백업받아두기 호스트웨이 2012.06.29 26826
27 안전한 MySQL 접속하기 file 호스트웨이 2012.06.22 13055
26 chive – phpMyAdmin 보다 좋은 ! 호스트웨이 2012.05.18 10621