我用 mysql 插入数据, 每 50 条就 commit一次,插入 40万 用了一个多小时,但是查询时,就在一瞬间,好快啊, 想不明白,内部的实现咋 差别这么大!!?

解决方案 »

  1.   

    查询时充分利用了索引,当然快,插入时,考虑到要更新索引表,和处理相关事务日志写入,当然很耗时间了。你不妨在插入之前,把表的索引drop掉,插入结束时,再建立索引,那样总的插入时间会少很多。
      

  2.   

    要看你的表中到底有多少索引? 还有没有并发用户在读表? 用的什么存储引擎? 等等因素。当您的问题得到解答后请及时结贴.
    http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5.html
      

  3.   

    先drop索引,再建立索引,这个做法值得推荐啊:)
      

  4.   

    50 commit一次,数量太少。改成1K~1W