很慢我有2個表: 1.新聞(450K行) 2. news_tags(3M行)2K行上的更新是在MySQL
上有哪些更新的房源信息表更新一些觸發器。此SQL執行時間太長...
UPDATE news
SET news_category = some_number
WHERE news_id IN (SELECT news_id
FROM news_tags
WHERE tag_id = some_number); #about 3k rows
我該如何讓它更快?
由於提前, S.
請定義「慢」。什麼太久了?執行計劃的外觀如何?發現要更新的數據時出現問題(tag_id未編入索引),或者由於可能已死的緩慢觸發器而導致執行中的問題?你是CPU還是IO限制? – TomTom 2010-04-20 10:06:43
這是生產數據庫的一次更新,需要超過5分鐘。我們的Web應用程序在執行查詢時返回504錯誤... SELECT news_id FROM news WHERE news_id IN(SELECT news_id FROM news_tags WHERE tag_id = some_number)需要1.04秒。所以問題在於觸發器,但我不能禁用它們。 – sergeik 2010-04-20 11:28:13