介绍
小编给大家分享一下mysql查看索引使用情况的方法,希望大家阅读完这篇文章后大所收获、下面让我们一起去探讨吧!
mysql中支持散列和btree索引.innodb和myisam只支持btree索引,而内存和堆存储引擎可以支持散列和btree索引。
我们可以通过下面语句查询当前索引使用情况:
show status like & # 39; % Handler_read % & # 39;; + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + | |,Variable_name Value | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + | |,Handler_read_first 0 | | |,Handler_read_key 0 | | |,Handler_read_last 0 | | |,Handler_read_next 0 | | |,Handler_read_prev 0 | | |,Handler_read_rnd 0 | | |,Handler_read_rnd_next 0 | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +
如果索引正在工作,则Handler_read_key的值会很高,这个值代表一个行被索引值读的次数,很低值表名增加索引得到的性能改善不高,因此索引并不经常使用。
如果Handler_read_rnd_next值很高意味着查询运行效率很低,应该建立索引补救,这个值含义是在数据文件中读取下一行的请求数。如果正在进行大量表扫描,Handler_read_rnd_next的数值将会很高。说明索引不正确或者没有利用索引。
看完了这篇文章,相信你对mysql查看索引使用情况的方法有了一定的了解,想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!