简单的说,
前提: MySQL 中,如果引擎为 innodb,并且有自增 ID
对于批量插入数据语句,MySQL 提供了批量申请自增 ID 的策略:
1、语句执行过程中,第一次申请自增 ID,会分配 1 个
2、1 个用完以后,这个语句第二次申请自增 ID,会分配 2 个
3、2 个用完以后,还是这个语句,第三次申请自增 ID,会分配 4 个
依此类推,同一个语句去申请自增 ID,每次申请到的自增 ID 个数都是上一次的两倍。举个栗子:
比如我批量插入 10 条记录,
那么其自增 ID 为 1、2、3、4、5、6、7、8、9、10,
但是 MySQL 分配了 1 + 2 + 4 + 8 = 15 个自增 ID。
也就是说,下一个自增 ID 是从 16 开始了。
比如我又批量插入 10 条记录,
那么其自增 ID 为 16、17、18、19、20、21、22、23、24、25,
但是 MYSQL 也是分配了 1 + 2 + 4 + 8 = 15 个 自增 ID,下一个自增 ID 从 31 开始。其作用主要是提高性能,如果一个一个去申请自增 ID 太慢了,而且并发时容易造成堵塞,影响性能,因此这样可以一次性申请多个,提高了性能。

MySQL 批量插入申请自增 ID相关推荐

  1. mysql批量插入 增加参数_MySql 的批量操作,要加rewriteBatchedStatements参数

    MySql 的批量操作,要加rewriteBatchedStatements参数 作者:赵磊 博客:http://elf8848.iteye.com ------------------------- ...

  2. mysql批量插入跟更新_Mysql批量插入和更新的性能-问答-阿里云开发者社区-阿里云...

    利用Hibernate,连接池使用的是BoneCP,做了一个MySql批量插入和批量更新的Demo,出现了下面两个问题. 1.批量插入.我采用的是原生态的JDBC,每次批量插入60条数据左右(数据量不 ...

  3. Mysql批量插入数据问题解决和优化

    Mysql批量插入数据问题解决和优化 一.问题描述 项目中mysql批量插入大概50000左右数据,使用事务和批量,但是速度依旧很慢,大约60s左右,迫切希望改进这个问题. 二.问题原因 尽管是批量a ...

  4. mysql 批量插入亿级数据做测试用

     mysql 批量插入亿级数据做测试用 表结构: -- 性能提升 SELECT COUNT(*) from `user`.`user` ; SHOW VARIABLES; set session bu ...

  5. mysql批量插入跟更新_Mysql批量插入和更新的性能

    利用Hibernate,连接池使用的是BoneCP,做了一个MySql批量插入和批量更新的Demo,出现了下面两个问题. 1.批量插入.我采用的是原生态的JDBC,每次批量插入60条数据左右(数据量不 ...

  6. node.js中mysql批量插入更新的三种方法

    [背景]在项目中遇到一个批量插入数据的需求,由于之前写过的sql语句都是插入一个对象一条数据,于是去网上搜关键词 "sql批量插入"."mysql批量插入"等, ...

  7. Mysql 批量插入大量数据的两种方案以及优缺点(分别是 5W 条数据和 10W 条数据)

    Mysql 批量插入(5W 条数据和 10W 条数据) 1.批量插入思路 一般是有两种不同的思路: 1.for 循环批量插入 2.生成一条 SQL 语句,比如 insert into user(id, ...

  8. MYSQL批量插入数据库实现语句性能分析

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

  9. Mysql批量插入更新性能优化

    Mysql批量插入更新性能优化 对于数据量较大的插入和更新,因io/cpu等性能瓶颈,会产生大量的时间消耗,目前主流的优化主要包括预编译.单条sql插入多条数据.事务插入等,下面详细介绍一下: 单条插 ...

  10. Mybatis Mysql 批量插入返回id

    1. 目标: 使用Mybatis 批量插入数据返回自增的id 2. 具体实现 注意: MyBatis版本3.3.1或者以上 <insert id="save" useGene ...

最新文章

  1. scikit-learn algorithm cheat sheet【汉化版】
  2. for循环中new的对象什么时候被回收_你真的了解JS里的 new 吗?
  3. hspice2014安装教程
  4. MyBatis 源码解读-environmentsElement()
  5. 工作99:任务加1逻辑
  6. 程序员自救指南:一不小心删库删表怎么办?
  7. 征稿 | MIUA 2022 医学影像理解与分析会议
  8. 去掉Tomcat的管理页面
  9. 《深入理解JavaScript闭包和原型》笔记
  10. excel npoi 连接_Asp.Net使用Npoi导入导出Excel的方法
  11. Hugging Face Course-Diving in 抱抱脸 Tokenizers library (WordPiece tokenization Unigram tokenization)
  12. codevs 1329 东风谷早苗
  13. CST仿真指导 | 利用软件自带的示例与教程快速建模仿真
  14. 实力认证!Coremail连续9次入围安全牛《中国网络安全行业全景图》
  15. linux 如何通过进程号找到文件路径
  16. Anima Toon:体素角色动画软件
  17. linux系统start x,linux的startx问题
  18. 腾讯和蘑菇街的面试总结
  19. Spring Cloud Gateway实战之三:动态路由
  20. ROC曲线的通俗理解

热门文章

  1. “疫情当下”能做什么?PHP直播系统源码在行动
  2. 爱了爱了!阿米洛熊猫VA108机械键盘cherry樱桃粉轴白灯,写代码神器!免费包邮送到家!...
  3. Spring MVC实现服务端数据验证 服务端数据校验 Spring Boot 服务端数据校验
  4. 通过GPS测试跑步速度可行性验证
  5. 施耐德 m340 编程手册_工控安全研究系列(一)施耐德PLC 140CPU 65150
  6. Tcl 语言 ——列表篇
  7. 项目过程管理(五)需求文档
  8. CDA Level I 模拟题(1)【附答案解析】
  9. IPEmotion 2022 R1支持ARINC 429数据总线标准
  10. ARINC429协议芯片DEI1016工作原理