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초로 설정되어 있는 것을 볼 수 있습니다. 물론 이 값은 변경도 가능합니다.


번호 제목 글쓴이 날짜 조회 수
25 [MySQL] 무한정 늘어나는 log-bin 파일 줄이기 호스트웨이 2012.11.23 990
24 phpmyadmin에서 'mcrypt 확장모듈을 불러올 수 없습니다' 에러 시 file 호스트웨이 2012.11.29 1108
23 mysql-5.5.x 에서 character-set 변경 호스트웨이 2012.12.07 1313
22 MySQL에서 Query Cache 사용하기 호스트웨이 2012.12.20 1656
21 innodb 설치 및 옵션 호스트웨이 2014.04.14 11709
20 MariaDB, MySQL 의 InnoDB 엔진 백업 솔루션 xtrabackup 호스트웨이 2015.05.07 6618
19 Ubuntu mysql 삭제/재설치 호스트웨이 2015.09.04 10338
18 MySQL Processlist 콘솔 상에서 확인 호스트웨이 2015.09.07 683
17 MySQL 보안을 위한 전용관리계정으로 MySQL 관리하기 호스트웨이 2015.09.08 2938
16 MYSQL-날짜 관련 함수 모음 호스트웨이 2015.09.09 29542
15 mysql replication을 이용한 DB 백업 동기화 에러 발생시 (slave db 1062 error) 호스트웨이 2015.09.09 3260
14 MYSQL의 "too many connections" 에러 해결법 호스트웨이 2015.09.10 5950
13 MySQL Table 상태 확인, 복구 및 최적화 호스트웨이 2015.09.11 3302
» 지정된 시간 이상 질의를 계속 하는 질의문 잡아내기 호스트웨이 2015.09.15 623
11 MYSQL 동시접속자수 늘리기 호스트웨이 2015.09.18 1755
10 MySQL DB 옵티마이저 사용법 호스트웨이 2015.09.18 1386
9 [mysql] shell 자동화 호스트웨이 2015.09.20 914
8 [mysql] table 백업 호스트웨이 2015.09.21 1252
7 [mysql] /tmp/mysql.sock이 없다고 DB접속이 안되는 경우 호스트웨이 2015.09.21 2450
6 [mysql] sqli, pdo 설정 확인 호스트웨이 2015.09.22 653