2

我有几个这样的 MyISAM 表,它们有数十亿行和 8 个非常复杂的索引。

当我每天一次导入数据时,我禁用密钥,从文件导入,然后启用密钥。这是相当快的。

我刚刚写了一个脚本来删除某些记录,大约 1%,每周执行一次。我在没有禁用键的情况下运行它,因为我认为它需要索引来查找我要删除的记录。

我的问题是它在最后 45 分钟内卡住preparing了第DELETE一个。我不认为它甚至可以在一周内删除它们!当然,这需要很快,因为我必须每天插入更多行。

ALTER TABLE... DISABLE KEYS所以我的问题是:在这种情况下会更有效DELETE吗?找到要删除的记录需要更长的时间,但它应该更快地删除它们......?(我不知道。)

我会自己测试它,但这些表不是我可以轻松测试不同想法的沙盒。

4

0 回答 0