我有一個數據庫表,有300,000行和113.7 MB的大小。我的數據庫在Ubuntu 13.10上運行,擁有8個內核和8GB內存。就目前而言,MySQL服務器平均佔用750%的CPU。和6.5%的MEM(通過在CLI中運行top
獲得的結果)。另外需要注意的是,它運行在與Apache2 Web服務器相同的服務器上。MySQL查詢花費太長的時間來加載
這就是我得到Mem行: Mem: 8141292k total, 6938244k used, 1203048k free, 211396k buffers
當我運行:show processlist;
我得到這樣的回報:
2098812 | admin | localhost | phpb | Query | 12 | Sending data | SELECT * FROM items WHERE thumb = 'Halloween 2013 Horns/thumbs/Halloween 2013 Horns (Original).png'
2098813 | admin | localhost | phpb | Query | 12 | Sending data | SELECT * FROM items WHERE thumb = 'Halloween 2013 Witch Hat/thumbs/Halloween 2013 Witch Hat (Origina
2098814 | admin | localhost | phpb | Query | 12 | Sending data | SELECT * FROM items WHERE thumb = 'Halloween 2013 Blouse/thumbs/Halloween 2013 Blouse (Original).png
2098818 | admin | localhost | phpb | Query | 11 | Sending data | SELECT * FROM items WHERE parent = 210162 OR auto = 210162
某些查詢正在服用超過10秒的執行,這不是列表中的頂部,而是在中間的某個位置,以便提供有關在此列表中堆疊多少個查詢的視角。我覺得這可能與我的查詢現金配置有關。下面是配置從運行SHOW STATUS LIKE 'Qc%';
+-------------------------+----------+
| Variable_name | Value |
+-------------------------+----------+
| Qcache_free_blocks | 434 |
| Qcache_free_memory | 2037880 |
| Qcache_hits | 62580686 |
| Qcache_inserts | 10865474 |
| Qcache_lowmem_prunes | 4157011 |
| Qcache_not_cached | 3140518 |
| Qcache_queries_in_cache | 1260 |
| Qcache_total_blocks | 4440 |
+-------------------------+----------+
表明我注意到Qcache_lowmem_prunes
似乎有點高,這正常嗎?
我一直在尋找StackOverflow,但找不到任何能解決我的問題的東西。任何幫助,將不勝感激,謝謝!
也許,你會幸運與這種問題在http://serverfault.com/ –
你有你的表上的索引? –
我也會在那裏發表,謝謝Louis。 是的,我確實有索引。 – Devontrae