如何在没有大行的情况下提高mysql INSERT查询效率

时间:2015-12-22 12:04:49

标签: php mysql

我用谷歌搜索但没有找到任何有效的解决方案。我有一个小的php文件,其中只有两个INSERT查询(不同的表)。一个表格大约有3358500行,另一个表格大约有679570行。我认为由于行数很多,插入速度非常慢。

我虽然使用这些:
i)存储过程(在这种情况下可能无效)
ii)使用交易

**注意:使用InnoDB引擎

请提供除上述两项以外的其他解决方案。谢谢!

1 个答案:

答案 0 :(得分:1)

插入慢的可能性很小。有些已经在评论中说明了,还是让我再写一遍。

1)确保在进行批量插入时进行扩展插入。 IT将显着提高您的查询速度。 2)您可能在桌面上有一些触发器可能会减慢插入速度。 3)你可能在表上有很多索引,索引被证明会使mysql变慢,这就是我们处理它的方法很少的原因。

  • 启用事务 - 以便在事务结束时构建索引。
  • 暂时禁用索引/键。插入完成后,您可以启用它。这里有相关的答案。

MySQL disable & enable keys