집 >데이터 베이스 >MySQL 튜토리얼 >mysql의 느린 쿼리 로그는 무엇을 기록하나요?
mysql에서 느린 쿼리 로그는 응답 시간이 임계값을 초과하는 명령문을 기록합니다. 응답 시간 임계값은 실행 시간이 "long_query_time"을 초과하는 값입니다. 이 값의 기본값은 10, 즉 느린 쿼리 로그 기록입니다. 위의 SQL 문은 10초 이상 실행됩니다. 느린 쿼리 로그는 로그 파일과 데이터베이스 테이블에 로그 레코드를 기록합니다.
이 튜토리얼의 운영 환경: windows10 시스템, mysql8.0.22 버전, Dell G3 컴퓨터.
MySQL의 느린 쿼리, 전체 이름은 느린 쿼리 로그로, MySQL에서 제공하는 로그 기록으로, MySQL에서 응답 시간이 임계값을 초과하는 명령문을 기록하는 데 사용됩니다.
특정 환경에서는 실행 시간이 long_query_time 값을 초과하는 SQL 문이 느린 쿼리 로그에 기록됩니다.
long_query_time의 기본값은 10입니다. 이는 10초 이상 실행되는 명령문이 기록된다는 의미입니다.
기본적으로 MySQL 데이터베이스는 느린 쿼리 로그를 시작하지 않으며 이 매개변수를 수동으로 설정해야 합니다.
물론 튜닝에 필요하지 않은 경우 일반적으로 이 매개변수를 활성화하지 않는 것이 좋습니다. 느린 쿼리 로그를 활성화하면 성능에 특정 영향을 미치기 때문입니다.
느린 쿼리 로그는 로그 파일 및 데이터베이스 테이블에 로그 레코드 쓰기를 지원합니다.
매개변수 설명
slow_query_log: 느린 쿼리 로그를 켤지 여부, 1은 켜짐, 0은 꺼짐을 의미합니다.
log-slow-queries: 이전 버전(5.6 이하 버전) MySQL 데이터베이스 느린 쿼리 로그 저장 경로입니다. 이 매개변수를 설정할 수 없으며 시스템은 기본 파일인 host_name-slow.log
slow-query-log-file: 새 버전(5.6 이상) MySQL 데이터베이스 느린 쿼리 로그 저장 경로로 기본 설정됩니다. 이 매개변수는 설정할 수 없으며 시스템은 기본 파일인 host_name-slow.log
long_query_time: 느린 쿼리 임계값으로 설정됩니다. 쿼리 시간이 설정된 임계값을 초과하면 로그가 기록됩니다.
log_queries_not_using_indexes: 인덱스를 사용하지 않는 쿼리도 느린 쿼리 로그에 기록됩니다(선택 사항).
log_output: 로그 저장 방법. log_output='FILE'은 로그를 파일로 저장한다는 의미이며 기본값은 'FILE'이다. log_output='TABLE'은 로그를 데이터베이스에 저장한다는 의미입니다.
추가 지식:
1. 느린 로그 기능이 기본적으로 꺼져 있는지 확인하세요.
OFF는 느린 로그 기능을 나타냅니다. DESKTOP-2331B4V-slow.log 파일에 저장되며 DESKTOP은 내 컴퓨터 이름입니다.
2. global Slow_query_log=1;로 설정하여 느린 로그 기능을 켭니다.
그런 다음 느린 로그 상태를 쿼리합니다
상태가 ON이면 느린 로그 기능이 켜져 있음을 의미합니다.
3. 기본 long_query_time 시간을 확인하세요.
long_query_time은 10초입니다. 즉, 10초를 초과하는 SQ 문은 느린 로그에 기록됩니다.
4. 기본값인 10초는 너무 깁니다. 전역 long_query_time=3을 설정하세요.
창 시스템인 경우에는 cmd를 다시 입력하세요. long_query_time이 설정된 세션) long_query_time 기간을 쿼리하는 경우 여전히 기본 10초이므로 세션을 다시 시작해야 합니다) 그리고 long_query_time 기간을 다시 쿼리합니다
추천 학습: mysql 비디오 튜토리얼
위 내용은 mysql의 느린 쿼리 로그는 무엇을 기록하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!