今天我們看看關于MySQL慢日志的閱讀。
我們知道,如果我們的語句不夠優化,那麼首先MySQL的慢日志是進一步優化的離線證據,雖然裡面有好 多“僞慢語句”!
先不說怎麼優化,如果你的日志有一條語句賭住了,那麼會有不計其數的慢語句填充到MySQL的滿日志裡面。那麼首先提煉出這些語 句就非常頭疼。
今天主要介紹兩種工具:
1,mysqldumpslow。(咱們 MySQL自帶的簡單而又實用的工具)
我們先來看下mysqldumpslow的結果。
[root@localhost ~]# mysqldumpslow -r localhost-slow.log
Reading mysql slow query log from localhost-slow.log
Count: 2 Time=7.00s (14s) Lock=0.00s (0s) Rows=0.0 (0), root[root]@localhost
select * from t_page_sample order by id desc limit N,N
Count: 1 Time=11.00s (11s) Lock=0.00s (0s) Rows=1.0 (1), root[root]@localhost
select count(*) from t_page_sample
Count: 1 Time=1418.00s (1418s) Lock=0.00s (0s) Rows=0.0 (0), root[root]@localhost
insert ignore into t_page_sample select ceil(rand()*N), ceil(rand()*N), date_sub(now(),interval floor(rand()*N) day), now() from t_page_sample