数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

mysql性能的检查和调优方法[3]


发布日期:2022年08月15日
 
mysql性能的检查和调优方法[3]

这时可以看到mysql使用了userid这个索引搜索了用userid索引一次搜索后结果集有然后虽然使用了filesort一条一条排序但是因为结果集只有区区效率问题得以缓解但是如果我用别的userid查询结果又会有所不同

mysql> desc select * from imgs where userid=admin order by clicks desc limit ;

row in set ( sec)

这个结果和userid=mini的结果基本相同但是mysql用userid索引一次搜索后结果集的大小达到条记录都会加入内存进行filesort效率比起mini那次来说就差很多了这时可以有两种办法可以解决第一种办法是再加一个索引和判断条件因为我只需要根据点击量取最大的条数据所以有很多数据我根本不需要加进来排序比如点击量小于这些数据可能占了很大部分我对clicks加一个索引然后加入一个where条件再查询create index clicks on imgs(clicks);

mysql> desc select * from imgs where userid=admin order by clicks desc limit ;

row in set ( sec)

[] [] [] [] [] []

               

上一篇:高性能MySQL:捕获诊断数据(3)

下一篇:mysql性能的检查和调优方法[2]