> 데이터 베이스 > MySQL 튜토리얼 > mysql slow log统制

mysql slow log统制

WBOY
풀어 주다: 2016-06-07 16:27:22
원래의
943명이 탐색했습니다.

mysql slow log控制 参考官方文档:http://dev.mysql.com/doc/refman/5.6/en/slow-query-log.html ? ? ? MySQL能够记录执行时间超过参数 ? long_query_time ? 设置值的SQL语句,默认是不记录的。 获得初始锁定的时间不算作执行时间。mysqld在SQL执行完和所有

mysql slow log控制

参考官方文档:http://dev.mysql.com/doc/refman/5.6/en/slow-query-log.html

?

?

?

MySQL能够记录执行时间超过参数?long_query_time?设置值的SQL语句,默认是不记录的。

获得初始锁定的时间不算作执行时间。mysqld在SQL执行完和所有的锁都被释放后才写入日志。且记录顺序可能不同于执行顺序。

5.1.6以前mysql使用--log-slow-queries[=file_name]来开启记录慢的SQL。

MySQL 5.1.6:日志可以记录在文件或是表中,由参数e?--log-output来指定日志的目标类型。

MySQL5.1.12: 使用?--slow_query_log[={0|1}]代替log-slow-queries,一个默认日志文件被使用

MySQL5.1.29: 使用slow_query_log[={0|1}]控制日志启用,slow_query_log_file=file_name指定日志文件。log-slow-queries参数弃用。


默认:管理语句和没有使用index的查询将不记录。可以通过??--log-slow-admin-statements?和?log_queries_not_using_indexes来设定是否记录。

管理语句包括: ALTER TABLE, ANALYZE TABLE, CHECK TABLE, CREATE INDEX, DROP INDEX, OPTIMIZE TABLE,? REPAIR TABLE.

如果设置了log_queries_not_using_indexes,可能引起日志文件快速增长,可以考虑使用参数log_throttle_queries_not_using_indexes?设置每分钟记录能够记录的数量。


默认:一个复制从库不会记录复制查询的日志。为了改变这个,可以使用参数--log-slow-slave-statements

直接查看慢查询日志文件是一项艰巨的任务,我们可以使用mysqldumpslow工具来辅助。?Section?4.6.8, “mysqldumpslow?— Summarize Slow Query Log Files”.


另外:慢查询日志是在查询结束后才记录,故正在执行的慢SQL并不能被定位到,可以使用show processlist命令查看当前MySQL在进行的线程,包括线程的状态、是否锁表等等,可以实时地查看SQL的执行情况。

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿