1.开启querylog.
windows:
在[mysqld]下开启:(我的mysql版本是5.5+,低版本的开启方法略有不同。)
slow_query_log = 1 //开启query log
long-query-time = 0.2 //记录时间大于0.2秒的query
slow_query_log_file = F:\RubyStack\apache2\logs\mysqlSlowQuery.log
//query log 记录保存的位置 (我使用了绝对路径)
log-queries-not-using-indexes = 1 //记录没有使用索引的query
2.使用mysqldumpslow分析querylog
安装perl:
我第一次使用时没有安装perl环境。给大家分享一个安装perl和如何配置才能使用mysqldumpslow的方法:http://www.chriscalender.com/?p=251
说明:安装好perl后,我在cmd下输入:ppm 就打开了perl package Manager 在上面可以搜素安装 dbd-mysql 和DBI (具体的原理我也不懂。个人情况也可能不同。)
然后在mysql 的bin 下打开命令行窗口:
最后:分析哪一个文件你可以直接加入路径例如:
其中字段含义如下:
出現次數(Count),
執行最長時間(Time),
累計總耗費時間(Time),
等待鎖的時間(Lock),
發送給客戶端的行總數(Rows),
掃描的行總數(Rows),