Linux DB

Mysql 프로세스가 CPU / 메모리 자원을 비정상적으로 많이 사용하여 서버의 load average가

급증 하거나, 웹페이지 접속시 로딩 속도가 현저히 지연될 경우가 있습니다.

이럴 때에는 쿼리가 처리 되는데 얼마나 시간이 소요 되는지 my.cnf에 slow-query-log를 남기게끔

설정하여 원인 분석을 할 수 있습니다.

 

[mysqld]

log-slow-queries = 로그 파일명

long_query_time = 쿼리 타임

 

ex)

 # vi /etc/my.cnf

[mysqld]

log-slow-queries = /usr/local/mysql/var/mysql-slow.log

long_query_time = 3

위 내용은 쿼리 타임이 '3초'를  초과 하는 쿼리에 대해 /usr/local/mysql/var/mysql-slow.log 파일에 기록 한다는 뜻입니다.


my.cnf에 설정 및 mysql을 리스타트 한 뒤 운영 하다 보면 아래와 같이 slow-query-log가 남게 됩니다.

 

use iamroot;
select max(wr_comment) as max_comment from g4_write_ja
                  where wr_parent = '92' and wr_is_comment = 1;
# Time: 120809 16:08:15
# User@Host: iamroot[iamroot] @  []
# Query_time: 253  Lock_time: 0  Rows_sent: 1  Rows_examined: 419562
select max(wr_comment) as max_comment from g4_write_ja
                  where wr_parent = '92' and wr_is_comment = 1;
# Time: 120809 16:08:17
# User@Host: iamroot[iamroot] @  []
# Query_time: 94  Lock_time: 0  Rows_sent: 0  Rows_examined: 640675
use iamroot;
SELECT count(*) from comment where boardcode=1045552594 and boardidx=274;
# Time: 120809 16:08:23
# User@Host: iamroot[iamroot] @  []
# Query_time: 183  Lock_time: 0  Rows_sent: 1  Rows_examined: 268576

 로그 내용 중 각 항목에 대한 설명은 아래와 같습니다.

Query_time : 쿼리 수행시간
Lock_time : 테이블 LOCK 이 걸린시간
Row_sent : 쿼리 처리 결과 ROW 수
Rows_examined : 쿼리 처리 대상의 ROW 수 

 

번호 제목 글쓴이 날짜 조회 수
65 MySQL Bash 스크립트를 활용한 로컬 백업 호스트웨이 2016.02.04 12405
64 [Oracle] 대량 자료 조회 Parallel 호스트웨이 2015.09.26 7245
63 DB접속시 DNS 관련 오류 호스트웨이 2015.09.25 18302
62 MYSQL 접속 - 소켓 지정하여 접속하기 호스트웨이 2015.09.23 58397
61 [mysql] 작은 용량의 파일 로드 속도가 느려진 경우 호스트웨이 2015.09.22 7108
60 [mysql] sqli, pdo 설정 확인 호스트웨이 2015.09.22 6597
59 [mysql] /tmp/mysql.sock이 없다고 DB접속이 안되는 경우 호스트웨이 2015.09.21 11174
58 [mysql] table 백업 호스트웨이 2015.09.21 7801
57 [mysql] shell 자동화 호스트웨이 2015.09.20 6329
56 MySQL DB 옵티마이저 사용법 호스트웨이 2015.09.18 6859
55 MYSQL 동시접속자수 늘리기 호스트웨이 2015.09.18 7322
54 지정된 시간 이상 질의를 계속 하는 질의문 잡아내기 호스트웨이 2015.09.15 6042
53 MySQL Table 상태 확인, 복구 및 최적화 호스트웨이 2015.09.11 10920
52 MYSQL의 "too many connections" 에러 해결법 호스트웨이 2015.09.10 11795
51 mysql replication을 이용한 DB 백업 동기화 에러 발생시 (slave db 1062 error) 호스트웨이 2015.09.09 8981
50 MYSQL-날짜 관련 함수 모음 호스트웨이 2015.09.09 40702
49 MySQL 보안을 위한 전용관리계정으로 MySQL 관리하기 호스트웨이 2015.09.08 8961
48 MySQL Processlist 콘솔 상에서 확인 호스트웨이 2015.09.07 6060
47 Ubuntu mysql 삭제/재설치 호스트웨이 2015.09.04 16830
46 MariaDB, MySQL 의 InnoDB 엔진 백업 솔루션 xtrabackup 호스트웨이 2015.05.07 13868