2010-06-04 42 views
2

我有一個WordPress網站已啓用並運行,這是相當受歡迎,但在過去幾天我的表現已經退化非常。重型WordPress的MySQL查詢,請幫我找到並優化它

我已經安裝了Jet Profiler並且一直在監視MySQL數據庫以查看是否可以發現錯誤,並且這個查詢一直是最嚴重的錯誤。

SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts WHERE 1=1 AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish') ORDER BY wp_posts.ID ASC LIMIT 0, 1 

我的第一個猜測是,除去SQL_CALC_FOUND_ROWS功能,改變*是隻有特定的領域,但我找不到什麼叫此查詢。

我如何知道哪個php文件調用了這個?

+0

您使用的是哪個版本的Wordpress? – sirhc 2010-06-04 09:36:10

+0

這是最新的版本2.9.2 – 2010-06-04 09:39:05

回答

0

最終的解決方案是,一個名爲TDO Mini Forms的插件被嚴重編碼並摧毀了我的數據庫。

所以,如果你有這個問題,並已插入我強烈建議刪除它。它似乎不再作爲插件數據庫中的有效選項存在

1

這是您的首頁。我假設你已經在WordPress之前安裝了緩存,使用WP Super Cache或其他東西(nginx,Squid等)。如果不是,你不應該看數據庫。 Caching is critical for WP

+0

我使用WP超高速緩存,現在交換W3總緩存,但我仍然遇到不穩定的相同問題 該網站可以在這裏找到,如果它可以幫助www.lazygamer.co .za – 2010-06-04 09:39:56

+0

當我多次訪問該頁面時,我收到了406個響應代碼。這可能會阻止您的頁面被緩存。當一切正常時,你的頁面應該返回一個200響應代碼。 – 2010-06-04 09:47:09

+0

這會解釋我所看到的行爲。你用什麼工具檢查響應代碼? – 2010-06-04 10:03:18