zoukankan      html  css  js  c++  java
  • 插入的技巧

    大批量插入数据的优化

      对于InnoDB引擎,大量插入数据时,可以采取以下几种优化措施

    1. 导入的数据按主键顺序排序保存。因为InnoDB引擎按主键顺序保存,如果能提前将插入的顺序排序能省去很多时间。
    2. 导入数据前执行 SET UNIQUE_CHECKS=0,关闭唯一性校验,在导入之后再设置为1。因为校验会耗费时间。
    3. 导入前设置 SET AUTOCOMMIT=0,关闭自动提交,导入结束后再设置为1;因为自动提交会消耗部分时间资源。

    insert的优化

    1. 尽量使用多个值表的insert语句,可以缩减客户端与数据库之间的连接、关闭等消耗。 INSERT INTO tablename values(1,2),(1,3),(1,4);
    2. 如果在不同客户端插入很多行,可使用insert delayed 语句得到更高的速度,让insert语句马上执行。
    3. 将索引文件和数据文件分在不同的磁盘上存放(InnoDB是在同一个表空间)
    4. 批量插入,可以增加bluk_insert_buffer_size变量值提供速度。(只对MyISAM有用)
    5. 当从一个文本文件装载一个表时,使用LOAD DATA INFILE,通常比INSERT语句快20倍。

    参考:https://mp.weixin.qq.com/s/Egh-xT_jMg2pO1gw1Td_Rw

  • 相关阅读:
    2. 商城项目完整购物链路 lq
    如何看源码? lq
    事务的了解 lq
    1. 商城业务架构分析 lq
    并发的基础知识 lq
    mysql 索引 lq
    mysqlinnodb了解 lq
    IE6.0、IE7.0 与FireFox CSS兼容的解决方法
    CSS:html/css教程:背景图片的定位问题详解
    IE6 BUG
  • 原文地址:https://www.cnblogs.com/smallzhen/p/14063736.html
Copyright © 2011-2022 走看看