如何开启慢查询日志
编辑 my.cnf, 注意,需置于 mysqld 的 section 下
log_slow_queries = /tmp/mysql-slow.log
long_query_time = 2
重启 mysql.
默认 SQL 语句超过 10 秒才算作慢查询,这里修改为 2 秒。
为何很简单的语句大部分时间运行很快,而偶尔很慢
- buffer pool
- query_cache_size
参考:
- The MySQL Query Cache
- Simple mysql update query is sometimes slow
- Beware large Query_Cache sizes
- 小心对待 query_cache_size
- MySQL Query Cache 小结
只有 insert, update, delete 慢
看看具体慢在哪里?
set profiling=1;
SHOW PROFILES;
show profile for query 1;
参考: