很慢我有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