我与数据库相当马虎,不能把这个与连接的工作,我甚至不能确定这将是更快......如何优化此DB操作?
DELETE FROM atable
WHERE btable_id IN (SELECT id
FROM btable
WHERE param > 2)
AND ctable_id IN (SELECT id
FROM ctable
WHERE (someblob LIKE '%_ID1_%'
OR someblob LIKE '%_ID2_%'))
Atable包含〜19M行,这将删除〜 3M的。目前,我只能使用LIMIT 100000
运行查询,而且我不想整天坐在这里,因为每个删除(100.000行)运行大约1.5分钟。
任何方法来加速/自动化它?
的MySQL 5.5
(?你觉得它已经坏DB设计,如果任何表包含20M行)
行数不是好坏表格设计的衡量标准。你的表是否正常化?这将是良好的餐桌设计的一种措施...... – Argeman