대량의 데이터를 조회하거나
잘못된 인덱스 사용으로 인해 장시간 Mysql 프로세스가 물리는 현상이 발생 할 경우
어떤 쿼리문이 이런 현상을 야기 시켰느냐에 대한 분석 시
Slow Query 를 사용하시면 손 쉽게 부하가 증가되는 쿼리를 찾으실 수 있으실 것입니다.
<사용 방법>
1. mysql 환경 설정 파일인 my.cnf 파일에 아래 내용을 추가 하시면 됩니다.
[mysqld]
long_query_time=초제한(1~10)
long_query_time=초제한(1~10)
log-slow-queries=로그파일명
ex)
[mysqld]
log-slow-queries = /temp/mysql-slow.log
long_query_time = 3
long_query_time = 3
위의 의미는 쿼리타임이 3초를 초과하는 쿼리에 대해 /temp/mysql-slow.log 파일에 로그를 남기라는 의미 입니다.
2. mysql 구동시 적용하는 방법이 있습니다.
$ mysqld_safe --datadir=데이터디렉토리 --log-slow-queries[=
file_name] &< 로그 파일의 내용 >
# Time: 080218 13:25:06
# User@Host: XXXXX[xxxxx] @ localhost [127.0.0.1]
# Query_time: 8 Lock_time: 0 Rows_sent: 1 Rows_examined: 98767
use CrediMail;
# User@Host: XXXXX[xxxxx] @ localhost [127.0.0.1]
# Query_time: 8 Lock_time: 0 Rows_sent: 1 Rows_examined: 98767
use CrediMail;
SELECT count(*) FROM test
위의 양식으로 slow 쿼리가 남게 됩니다.
slow log 로 남은 쿼리들은 explain 을 사용하여 정상적인 index를 타고 있는지 체크 해 보는 방법으로
문제점을 찾아 가시면 될 것입니다.
ex) mysql>explain 문제시 되는 쿼리;
<참고>
Query_time : 쿼리 처리 시간
Lock_time : lock 이 걸린 횟수
Row_sent : 조회 결과 Row 수
Rows_examined : 조회 대상 Row 수
Reference URL
댓글 1개
13년 전
어디서 부하가 많이 걸리는지 알기에는 좋을것 같네요..
게시판 목록
팁게시판
디자인과 관련된 유용한 정보를 공유하세요.
질문은 상단의 QA에서 해주시기 바랍니다.
질문은 상단의 QA에서 해주시기 바랍니다.
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 5752 | 10년 전 | 467 | ||
| 5751 | 10년 전 | 504 | ||
| 5750 | 10년 전 | 319 | ||
| 5749 | 10년 전 | 382 | ||
| 5748 | 10년 전 | 783 | ||
| 5747 | 10년 전 | 561 | ||
| 5746 | 10년 전 | 282 | ||
| 5745 | 10년 전 | 315 | ||
| 5744 | 10년 전 | 323 | ||
| 5743 | 10년 전 | 268 | ||
| 5742 | 10년 전 | 257 | ||
| 5741 | 10년 전 | 617 | ||
| 5740 | 10년 전 | 299 | ||
| 5739 | 10년 전 | 294 | ||
| 5738 |
프로그램은어려워
|
10년 전 | 909 | |
| 5737 | 10년 전 | 479 | ||
| 5736 | 10년 전 | 377 | ||
| 5735 | 10년 전 | 388 | ||
| 5734 |
잘살아보자
|
10년 전 | 588 | |
| 5733 |
잘살아보자
|
10년 전 | 533 | |
| 5732 |
잘살아보자
|
10년 전 | 938 | |
| 5731 |
잘살아보자
|
10년 전 | 293 | |
| 5730 |
|
10년 전 | 1269 | |
| 5729 |
잘살아보자
|
10년 전 | 528 | |
| 5728 |
잘살아보자
|
10년 전 | 348 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기