웹 느릴 때 꼭 해보는 DB 쿼리 로그 팁 공유합니다
안녕하세요 개발자 여러분
요즘 그누보드든, 워드프레스든, 영카트든 사이트가 좀 느리다 싶을 때
무조건 CSS/JS 때문이라고 생각하는 경우가 있는데요,
사실 DB 쿼리 병목이 주범인 경우가 꽤 많더라구요.
그래서 오늘은 제가 실무에서 자주 쓰는 SQL 쿼리 로깅 팁 하나 공유드려요.
이거 한번 써보시면 어떤 쿼리가 많이 돌고 느린지 금방 알 수 있어서
속도 튜닝에 큰 도움이 됩니다.
방법 1: PHP 코드에서 직접 로그 찍기
// common.php 또는 config.php에 추가
function log_query($sql) {
$log_file = G5_DATA_PATH.'/query_log.txt';
file_put_contents($log_file, date('Y-m-d H:i:s').' | '.$sql."\n", FILE_APPEND);
return $sql;
}
// 쿼리 실행 시 이렇게 호출
$sql = "SELECT * FROM g5_write_board WHERE wr_id = 1";
sql_query(log_query($sql));
이렇게 하면 /data/query_log.txt 파일에 날짜랑 쿼리가 하나씩 기록됩니다.
나중에 파일 열어서 보면 같은 쿼리가 10번, 100번씩 돌고 있는 것도 쉽게 보입니다.
방법 2: MySQL 자체 기능으로 느린 쿼리 추적
-- MySQL 콘솔에서
SET GLOBAL slow_query_log = 'ON';
SET GLOBAL slow_query_log_file = '/var/log/mysql-slow.log';
SET GLOBAL long_query_time = 1; -- 1초 이상 걸리는 쿼리만 기록
서버 접근 권한 있으신 분들은 이 방법도 좋습니다.
mysql-slow.log 파일 열어보면 진짜 병목 쿼리들이 그대로 찍혀요.
댓글 1개
감사합니다 데이터 베이스 잘 다루시는 분들 보면 부럽더라구요 : )
게시판 목록
개발자팁
질문은 QA에서 해주시기 바랍니다.
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 5396 | 기타 |
슈퍼스타맨
|
5개월 전 | 367 | |
| 5395 | PHP |
untitled
|
6개월 전 | 833 | |
| 5394 | MySQL |
선택과집중
|
7개월 전 | 613 | |
| 5393 | 웹서버 |
techstar
|
9개월 전 | 876 | |
| 5392 |
oneit
|
1년 전 | 1231 | ||
| 5391 | 11개월 전 | 1133 | |||
| 5390 | 11개월 전 | 919 | |||
| 5389 | 10개월 전 | 889 | |||
| 5388 | 10개월 전 | 989 | |||
| 5387 | 9개월 전 | 821 | |||
| 5386 | JavaScript |
nekoieye
|
9개월 전 | 987 | |
| 5385 | 웹서버 | 9개월 전 | 1000 | ||
| 5384 | JavaScript |
수평선1203
|
10개월 전 | 832 | |
| 5383 | 기타 | 11개월 전 | 1141 | ||
| 5382 | 기타 |
수평선1203
|
11개월 전 | 591 | |
| 5381 | JavaScript | 11개월 전 | 924 | ||
| 5380 | 기타 |
지구인430
|
11개월 전 | 707 | |
| 5379 | JavaScript | 11개월 전 | 706 | ||
| 5378 | 12개월 전 | 1209 | |||
| 5377 | 기타 |
수평선1203
|
1년 전 | 776 | |
| 5376 | jQuery |
수평선1203
|
1년 전 | 592 | |
| 5375 | jQuery |
techstar
|
1년 전 | 746 | |
| 5374 | 기타 |
수평선1203
|
1년 전 | 798 | |
| 5373 | MySQL |
wodud3073
|
1년 전 | 826 | |
| 5372 | 기타 |
수평선1203
|
1년 전 | 1028 | |
| 5371 | JavaScript |
wodud3073
|
1년 전 | 740 | |
| 5370 | JavaScript |
wodud3073
|
1년 전 | 745 | |
| 5369 | PHP |
wodud3073
|
1년 전 | 1254 | |
| 5368 | PHP | 1년 전 | 1426 | ||
| 5367 | 기타 |
nekoieye
|
1년 전 | 1302 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기