• 插入语句如何优化
    • 插入数据时,影响插入速度的主要是索引、唯一性校验、一次插入的数据条数等。
    • 插入数据的优化,不同的存储引擎优化手段不一样,在MySQL中常用的存储引擎有,MyISAM和InnoDB,两者的区别:
      • http://www.cnblogs.com/panfeng412/archive/2011/08/16/2140364.html
  • MyISAM
    • 禁用索引
      • 对于非空表,插入记录时,MySQL会根据表的索引对插入的记录建立索引。如果插入大量数据,建立索引会降低插入数据速度。
      • 为了解决这个问题,可以在批量插入数据之前禁用索引,数据插入完成后再开启索引。
      • 禁用索引的语句:
        • ALTER TABLE table_name DISABLE KEYS
      • 开启索引语句:
        • ALTER TABLE table_name ENABLE KEYS
      • 对于空表批量插入数据,则不需要进行操作,因为MyISAM引擎的表是在导入数据后才建立索引。
    • 禁用唯一性检查
      • 唯一性校验会降低插入记录的速度,可以在插入记录之前禁用唯一性检查,插入数据完成后再开启。
      • 禁用唯一性检查的语句:SET UNIQUE_CHECKS = 0;
      • 开启唯一性检查的语句:SET UNIQUE_CHECKS = 1;
    • 批量插入数据
      • 插入数据时,可以使用一条INSERT语句插入一条数据,也可以插入多条数据。
      • 第二种方式的插入速度比第一种方式快。
    • 使用LOAD DATA INFILE
      • 当需要批量导入数据时,使用LOAD DATA INFILE语句比INSERT语句插入速度快很多。
  • InnoDB
    • 禁用唯一性检查
      • 用法和MyISAM一样。
    • 禁用外键检查
      • 插入数据之前执行禁止对外键的检查,数据插入完成后再恢复,可以提供插入速度。
        • 禁用:SET foreign_key_checks = 0;
        • 开启:SET foreign_key_checks = 1;
    • 禁止自动提交
      • 插入数据之前执行禁止事务的自动提交,数据插入完成后再恢复,可以提高插入速度。
        • 禁用:SET autocommit = 0;
        • 开启:SET autocommit = 1;

MySQL插入语句优化相关推荐

  1. php面试专题---MYSQL查询语句优化

    php面试专题---MYSQL查询语句优化 一.总结 一句话总结: mysql的性能优化包罗甚广: 索引优化,查询优化,查询缓存,服务器设置优化,操作系统和硬件优化,应用层面优化(web服务器,缓存) ...

  2. 30种MySQL查询语句优化方法分享

    30种MySQL查询语句优化方法分享,对于MySQL查询语句来说效率是最重要的能用一分钟搞定的绝不能花费两分钟.今天整理了30种MySQL查询语句优化方法,供大家学习使用. 30种MySQL查询语句优 ...

  3. MySql插入语句时报错,错误代码1062

    MySql插入语句时报错,错误代码1062 mysql 工具操作报错 程序运行报错 Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConst ...

  4. 【sql】MySQL——插入语句(联表插入)

    今天用mysql插入联表数据遇见了一些问题,于是整理一下mysql插入语句. 插入语句 语法 方式一 INSERT INTO表名(列名,...) VALUES(值1,...);方式二 INSERT I ...

  5. Mysql删除语句优化_MySQL性能优化之常用SQL语句优化

    SQL性能优化的目标:至少要达到range级别,要求是ref级别,consts最高.[阿里巴巴JAVA开发手册] 说明: 1).consts单表中最多只有一个匹配行(主键/唯一索引),在优化阶段即可读 ...

  6. MYSQL查询语句优化

    mysql的性能优化包罗甚广: 索引优化,查询优化,查询缓存,服务器设置优化,操作系统和硬件优化,应用层面优化(web服务器,缓存)等等.这里的记录的优化技巧更适用于开发人员,都是从网络上收集和自己整 ...

  7. mysql insert 语句优化_分享insert into语句优化的小技巧

    MYSQL批量插入数据库实现语句性能分析 假定我们的表结构如下 代码如下CREATE TABLE example ( example_id INT NOT NULL, name VARCHAR( 50 ...

  8. 【myISAM和innoDB】mySql的引擎myisam和innodb的区别/mysiam(mysql插入速度优化)

    目录 Myisam 和Innodb 特点和擅长 Myisam 和Innodb 数据存储区别 Myisam引擎(非聚集索引--叶子节点存储数据地址的指针) Innodb引擎(聚集索引---叶子节点的da ...

  9. mysql sql语句优化面试_面试不要一把梭了,这才是SQL优化的正确姿势

    全文内容预览: 所以,在开始之前(MySQL 优化),咱们先来聊聊性能优化的一些原则. 性能优化原则和分类 性能优化一般可以分为:主动优化 被动优化 所谓的主动优化是指不需要外力的推动而自发进行的一种 ...

最新文章

  1. HTML5学习路线资料,HTML5前端面试的技术栈
  2. php管理员登录文件,快速的事情,只有管理员,PHP才能访问文件
  3. 【SpringBoot实战】员工部门管理页面,增删改查,含源码
  4. Smarty 显示大括号 | 在Smarty中计算数组元素的长度 | Smarty字符串拼接
  5. 只有python可以爬虫吗_无所不能的Python之爬虫那点事儿
  6. java 解析sh文件内容_java 文件读取
  7. Windows Store 开发总结——文件操作
  8. 《财产》评最受尊重公司:苹果第一谷歌第二
  9. Linux CentOS修改网卡IP/网关设置
  10. 转:Secure CRT 中文乱码问题解决
  11. html中css层叠样式表(行内样式,内嵌式,外部式)
  12. 百度识图API教程一:使用百度api识别物体
  13. 后盾网php微博系统,后盾网ThinkPHP微博项目开发视频教程 - 轻松自学网
  14. 51nod1359 循环探求
  15. 网站数据采集器-文章采集工具-关键词文章采集工具
  16. IPV6地址基础知识
  17. 智能垃圾桶语音芯片应用设计方案介绍,WT588F02B-8S
  18. 测试信号分析-估计理论的基本原理
  19. 动画云创始人胥克谦课程格子创始人李天放分享创业经历
  20. 1.1[潜心创作]冒险游戏(MineCraft)不喜勿喷

热门文章

  1. 【ALM】西门子Polarion产品助力汽车企业通过ASPICE认证
  2. 利用TP-Link TL-SG2005进行网络抓包
  3. c语言蛇形填充数组,蛇形
  4. ios 设备获取idfa_获取iOS设备唯一标示UUID
  5. Python少儿创意编程_新年快乐音乐贺卡.py 作者:李兴球
  6. 通达OA功能模块清单及介绍
  7. Java#9(文字格斗游戏和对象数组练习)
  8. 树莓派——认识树莓派
  9. linux版retroarch游戏,RetroArch
  10. Linux系统用什么翻译软件,Linux安装翻译软件StarDict的步骤(自己的操作总结)