mysql服务可以把超过指定规定时间的sql语句已日志的方式记录下来,检查当前mysql服务有没有记录慢查询的命令为: /usr/local/mysql/bin/mysqladmin var | grep log_slow | tr -d "|" 如果看到log_slow_queries OFF则没有启用,启用的方法很简单,把如下配置放在mysql的配置文件my.cnf中的mysqld段里即可。 log-slow-queries = /var/lib/mysql/slow-queries.log long_query_time = 1 log-queries-not-using-indexes log-slow-admin-statements 上面的配置打开了slow query日志,将会捕获了执行时间超过了1秒的查询,包括执行速度较慢的管理命令(比如OPTIMEZE TABLE),并且记录了没有使用索引的查询。这些SQL,都会被记录到log-slow-queries指定的文件/var/lib/mysql /slow-queries.log文件中。
log-slow-queries
long_query_time
log-queries-not-using-indexes
log-slow-admin-statements 需要说明的是long_query_time很多地方都说最小是1秒,其实该值可以是一个浮点数,起码在mysql 5版本中可以这么配置,例如 0.1,也就是100毫秒。 (责任编辑:IT) |