如何在mysql中处理庞大的数据库?

时间:2013-01-11 19:35:12

标签: mysql

我正在处理他们处理大量数据的项目。在每个表中,有100k或更多数据可用。现在我需要运行sql update query但是我不行。

我该如何解决这个问题?查询在我的localhost上成功运行,只有很少的数据。但在服务器上它不起作用

请帮帮我。

UPDATE buzz_business_view b, daily_deals d
SET d.business_id = b.`Business ID`
WHERE d.phone = b.phone 

由于

2 个答案:

答案 0 :(得分:2)

确保您要加入的列已编入索引。

使用where约束一次选择几行。不要试图一次性更新整个表格。

根据表格的主键将表格逻辑划分为多个部分,并一次更新一个部分。

答案 1 :(得分:0)

为了获得最佳性能,您需要为JOIN谓词提供合适的索引。

CREATE INDEX ... ON buzz_business_view (phone,`Business ID`) ;

CREATE INDEX ... ON daily_deals (phone) ;

当你说UPDATE语句“不起作用”时,语句是否会抛出错误,它是否只是挂起,或者语句是否成功完成,但结果并不像你期望的那样。