검수요청.png검수요청.png

"슬로우쿼리"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
(새 문서: '''슬로우쿼리'''<!--슬로우 쿼리-->란 DBMS 가 요청자로부터 요청받은 쿼리를 수행할때 일정시간 이상 수행되지 못한 쿼리이다.<ref name=...)
 
잔글 (my.sql 파일 확인)
 
(같은 사용자의 중간 판 2개는 보이지 않습니다)
1번째 줄: 1번째 줄:
'''슬로우쿼리'''<!--슬로우 쿼리-->란 [[DBMS]] 가 요청자로부터 요청받은 [[쿼리]]를 수행할때 일정시간 이상 수행되지 못한 쿼리이다.<ref name="순차리스트">〈[https://shutcoding.tistory.com/6 슬로우쿼리]〉, 《폐관코딩》, 2019-11-28</ref>
+
'''슬로우쿼리'''<!--슬로우 쿼리-->(Slow Query)란 [[DBMS]] 가 요청자로부터 요청받은 [[쿼리]]를 수행할때 일정 시간 이상 수행되지 못한 쿼리이다.<ref name="순차리스트">〈[https://shutcoding.tistory.com/6 슬로우쿼리]〉, 《폐관코딩》, 2019-11-28</ref>
 
 
  
 
== 개요 ==
 
== 개요 ==
37번째 줄: 36번째 줄:
  
 
==== my.sql 파일 확인 ====
 
==== my.sql 파일 확인 ====
mysql 내에서 서비스 재시작을 하지않고 적용이 가능하다.<ref name="순차리스트" />
+
mysql 내에서 서비스 재시작을 하지 않고 적용이 가능하다.<ref name="순차리스트" />
  
 
:{| cellpadding="10" cellspacing="1" border="1""
 
:{| cellpadding="10" cellspacing="1" border="1""
55번째 줄: 54번째 줄:
 
|width ="450px"| '''*''' index를 사용하지 않는 쿼리 기록 여부
 
|width ="450px"| '''*''' index를 사용하지 않는 쿼리 기록 여부
 
|width ="450px"| '''*''' mysql> set global log_queries_not_using_indexes = on;  
 
|width ="450px"| '''*''' mysql> set global log_queries_not_using_indexes = on;  
|}  
+
|}
  
 
==== 슬로우 쿼리 용어 ====
 
==== 슬로우 쿼리 용어 ====
70번째 줄: 69번째 줄:
 
* 슬로우쿼리〈[https://shutcoding.tistory.com/6 슬로우쿼리]〉,《폐관코딩》, 2019-11-28
 
* 슬로우쿼리〈[https://shutcoding.tistory.com/6 슬로우쿼리]〉,《폐관코딩》, 2019-11-28
 
* 슬로우쿼리 특징〈[https://okkks.tistory.com/43 슬로우쿼리 특징]〉,《이건없지》, 2009-08-12
 
* 슬로우쿼리 특징〈[https://okkks.tistory.com/43 슬로우쿼리 특징]〉,《이건없지》, 2009-08-12
 
  
 
== 같이 보기 ==
 
== 같이 보기 ==

2020년 8월 13일 (목) 22:52 기준 최신판

슬로우쿼리(Slow Query)란 DBMS 가 요청자로부터 요청받은 쿼리를 수행할때 일정 시간 이상 수행되지 못한 쿼리이다.[1]

개요[편집]

슬로우 쿼리가 많으면 성능저하가 발생하며 mysql 프로세스가 cpu 점유를 많이 하거나 db접속이 원활하지 않으면 분석이 가능하다.

특징[편집]

슬로우 쿼리를 이용하여 원인 분석에 도움이 될 수도 있다. log 를 쌓이게 하기 위해 mysql 실행시에 다음 옵션을 함께 추가하거나, my.cnf 파일을 직접 수정하여 mysql 를 실행할 수도 있다. [2]

슬로우쿼리 설정[편집]

 vi /etc/my.cnf 
 log-slow-queries = /var/log/mysql/mysql-slow.log   => 슬로우 쿼리 위치
 slow_query_log = 1   => 1은 슬로우 쿼리를 사용하겠다는 뜻
 long_query_time = 10   => 10초 이상 걸리는 쿼리를 슬로우쿼리 로그에 찍히게 한다.

my.cnf 파일 확인[편집]

my.cnf로 수정할 경우 mysql 서비스 재시작을 해야한다. [1]

항목 my.cnf 추가내용
* 해당 값 이상의 로그 기록 * long_query_time = 3
* 슬로우쿼리 활성 여부 (0 = 비활성 / 1 = 활성) * slow_query_log = 1
* 슬로우쿼리 로그파일 경로 * slow_query_log_file = /var/log/mysql/slow_queries.log
* index를 사용하지 않는 쿼리 기록 여부 * log_queries_not_using_indexes = on

my.sql 파일 확인[편집]

mysql 내에서 서비스 재시작을 하지 않고 적용이 가능하다.[1]

항목 my.cnf 추가내용
* 해당 값 이상의 로그 기록 * mysql> set global long_query_time = 3;
* 슬로우쿼리 활성 여부 (0 = 비활성 / 1 = 활성) * mysql> set global slow_query_log = 1;
* 슬로우쿼리 로그파일 경로 * mysql> set global slow_query_log_file="/var/log/mysql/slow_queries.log
* index를 사용하지 않는 쿼리 기록 여부 * mysql> set global log_queries_not_using_indexes = on;

슬로우 쿼리 용어[편집]

[1]

 Time = 쿼리 요청 시각
 Query_time : 쿼리 수행 시간
 Lock_time : 락이 걸린 시간
 Rows_sent = 쿼리 결과 row수
 Rows_examined = 쿼리대상 row수 

각주[편집]

  1. 1.0 1.1 1.2 1.3 슬로우쿼리〉, 《폐관코딩》, 2019-11-28
  2. 슬로우쿼리 특징〉, 《이건없지》, 2009-08-12

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 슬로우쿼리 문서는 데이터에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.