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 hostname-bin.000 로그 화일 관리 sylee 2008.06.11 22507
44 리눅스에 큐브리드 설치하기 file 호스트웨이 2008.09.03 22013
43 mysql4.1.x -> mysql4.0.x 로 옮기기 sylee 2008.05.15 21451
42 리눅스에서 MYSQL 데이터 디렉토리 변경 호스트웨이 2012.08.31 20791
41 [팁] Mysql 설치시 LinuxThreads 에러 메세지 sylee 2009.01.02 19487
40 My SQL 사용자 추가 호스트웨이 2008.05.19 19265
39 show processlist의 state 종류 호스트웨이 2012.05.11 19210
38 mysql의 table이 깨졌다는 메시지가 출력됩니다. sylee 2008.05.15 18873
37 MySQL Table 이 깨졌을 때 복구하는 방법 호스트웨이 2012.03.16 18650
36 DB접속시 DNS 관련 오류 호스트웨이 2015.09.25 18222
35 Ubuntu mysql 삭제/재설치 호스트웨이 2015.09.04 16825
34 MySQL-5.5 설치하기 호스트웨이 2012.04.27 15711
33 심볼릭 링크를 이용한 mysql 데이터 디렉토리 위치 변경 호스트웨이 2012.03.23 14299
32 Mysql - 원격 접속 지연 발생시 호스트웨이 2012.08.03 14013
31 MariaDB, MySQL 의 InnoDB 엔진 백업 솔루션 xtrabackup 호스트웨이 2015.05.07 13861
30 안전한 MySQL 접속하기 file 호스트웨이 2012.06.22 13055
29 MySQL Bash 스크립트를 활용한 로컬 백업 호스트웨이 2016.02.04 12399
28 MYSQL의 "too many connections" 에러 해결법 호스트웨이 2015.09.10 11788
27 Mysql banchmark tool – sysbanch 설치하기 호스트웨이 2012.07.06 11543
26 mysql 로그 삭제하기 호스트웨이 2012.07.20 11488