我在表中有一列「名稱」,並且至少有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