我在表中有一列“名称”,并且至少有1000万条记录。我在这个名称列上添加了一个索引。现在,对于最初的几次搜索,返回单个答案(无论名称是否存在)需要超过10秒的时间,但突然间,它在不到0.1秒的时间内给出结果。我错过了什么吗?我知道MySQL维护最近的查询的缓存,但我所尝试的查询是非常随机的...任何想法,为什么发生这种情况?使用MySQL观察到奇怪的事情......查询突然变得超快
2
A
回答
4
您的查询简单地暖索引缓存。这与查询缓存无关。由于InnoDB索引的索引基数值不存储在表文件中,因此InnoDB索引尤其需要一些命中预热。初始查询将使用它们遇到的索引数据来突出InnoDB缓冲池,这些数据由my.cnf中的innodb_buffer_pool_size指定的值定义。虽然对于MyISAM表不重要,但key_buffer_size的值可以进行类似的调整。
MySQL的InnoDB的性能tunning本章提供了一个很好的切入点进入弄清楚是怎么回事: http://dev.mysql.com/doc/refman/5.0/en/innodb-tuning.html
0
相关问题
- 1. 在MySQL更新查询中观察到突然下降
- 2. MySQL表分区奇怪的行为(慢速查询突然)
- 3. SQL查询做奇怪的事情
- 4. JQuery/IFrames奇怪的观察
- 5. 奇怪的SendKeys观察到Vb.Net
- 6. Eclipse突然开始做奇怪的事
- 7. Java:内存使用问题(突然观察到的峰值)
- 8. Google Fusion地图中的复选框突然变得很奇怪
- 9. DOM突变观察者是否比DOM突变事件慢?
- 10. AVPlayerItem奇怪的缓冲区观察者
- 11. 突变观察员--- subtree
- 12. HTMLInputElement的.value不能用突变观察者观察
- 13. Mysql查询奇怪失败
- 14. MySQL查询突然减速
- 15. 突变观察员只能得到具体内容
- 16. COUNT(*)使事情变得更快吗?
- 17. ReactiveUI变化观察的通知,有奇怪的顺序
- 18. 观察MySQL的变化表?
- 19. 事件:从观察获得事件观察者
- 20. 聚合物:复杂的观察者观察阵列突变
- 21. 突变观察点不起作用
- 22. 奇怪的事情,如果
- 23. 奇怪的事情ArrayList
- 24. 使用'auto'和std :: minmax观察奇怪的行为
- 25. Coldfusion中的编码 - 从查询结果中观察一个奇怪的值
- 26. 在没有轮询的情况下观察变量的变化
- 27. MySQL查询突然不再起作用
- 28. C++ - 奇怪的事情,输入得到扭转
- 29. gnuplot给我奇怪的情节外观
- 30. 奇怪查询
定义“相当随意” - 它很可能是你的查询有足够的非随机的,经过第一很少,很多你的结果集已被带入内存,所以查询会更快。 – lawrence 2009-12-09 01:07:23
呃...非常随意的只是输入我想到的任何东西。对不起...除此之外,我没有真正使用正式的随机性测试... – Legend 2009-12-09 01:15:52