t_user表

创建存储过程 insert_user(IN c int(10));

CREATE PROCEDURE insert_user(IN c int(10))
BEGINDECLARE i INT DEFAULT 0 ;REPEATSET i = i + 1 ;
INSERT INTO t_user (`name`, `addr`)VALUES("aaaaaaa", "bbbbbbb") ;
UNTIL i = c END REPEAT;
END

调用存储过程 Call pro_name(args);

-- MySQL默认为自动提交
SHOW VARIABLES LIKE '%autocommit%';
-- 设置当前会话不自动提交
SET SESSION autocommit=0;
SHOW VARIABLES LIKE '%autocommit%';
-- 新插入八千万行数据
CALL insert_user(80000000);
-- 提交
COMMIT;
-- 设置当前会话自动提交
SET SESSION autocommit=1;
SHOW VARIABLES LIKE '%autocommit%';

每插入10000000行数据要5 minutes 左右。
所以插入80000000行记录需要 40 minutes 左右。此次执行实际用了60 minutes。

以下为上述执行过程的统计信息

[SQL]-- MySQL默认为自动提交
SHOW VARIABLES LIKE '%autocommit%';
受影响的行: 0
时间: 0.001s[SQL]
-- 设置当前会话不自动提交
SET SESSION autocommit=0;
受影响的行: 0
时间: 0.000s[SQL]
SHOW VARIABLES LIKE '%autocommit%';
受影响的行: 0
时间: 0.001s[SQL]
-- 新插入八千万行数据
CALL insert_user(80000000);
受影响的行: 1
时间: 3632.734s[SQL]
-- 提交
COMMIT;
受影响的行: 0
时间: 0.295s[SQL]
-- 设置当前会话自动提交
SET SESSION autocommit=1;
受影响的行: 0
时间: 0.000s[SQL]
SHOW VARIABLES LIKE '%autocommit%';
受影响的行: 0
时间: 0.002s

使用存储过程实现千万级的大批量数据插入相关推荐

  1. SqlServer千万级以上的数据表查询优化方案《冷热数据库分离》的思路

    1.是分库而不是分表,分表即需要考虑引入分表算法,又影响后续查询. 2.热数据只占全部数据的一部分,因此每次优先查询热库,以下情况才查询冷库 --a.当查询条件未命中(结果集为空)时,查询冷库.   ...

  2. 数据分析实战案例:手把手教你用 Python 分析千万级淘宝数据

    1.项目背景与分析说明 1)项目背景 网购已经成为人们生活不可或缺的一部分,本次项目基于淘宝app平台数据,通过相关指标对用户行为进行分析,从而探索用户相关行为模式. 2)数据和字段说明 本文使用的数 ...

  3. mysql大批量数据插入技巧

    转自:https://jingyan.baidu.com/album/95c9d20d61b01dec4f75615a.html?picindex=6 首先我是简单的写了一个mysql的循环插入数据的 ...

  4. mysql 优化配置 大批量数据插入_php导入大量数据到mysql性能优化技巧

    本文实例讲述了php导入大量数据到mysql性能优化技巧.分享给大家供大家参考.具体分析如下: 在mysql中我们结合php把一些文件导入到mysql中,这里就来分享一下我对15000条记录进行导入时 ...

  5. mysql 优化配置 大批量数据插入_MYSQL开发性能研究——批量插入的优化措施

    一.我们遇到了什么问题 在标准SQL里面,我们通常会写下如下的SQL insert语句. INSERT INTO TBL_TEST (id) VALUES(1); 很显然,在MYSQL中,这样的方式也 ...

  6. MySQL大批量数据插入

    公司有一个项目,需要频繁的插入数据到MySQL数据库中,设计目标要求能支持平均每秒插入1000条数据以上.目前功能已经实现,不过一做压力测试,发现数据库成为瓶颈,每秒仅能插入100多条数据,远远达不到 ...

  7. mysql 优化配置 大批量数据插入_[译] MySQL 最佳实践 —— 高效插入数据

    当你需要在 MySQL 数据库中批量插入数百万条数据时,你就会意识到,逐条发送 INSERT 语句并不是一个可行的方法. MySQL 文档中有些值得一读的 INSERT 优化技巧. 在这篇文章里,我将 ...

  8. mybatis-plus大批量数据插入缓慢问题

    文章目录 问题 排查 结果 建议 问题 最近项目用的mybatis-plus做的映射,有个批处理文件内容的需求,在使用mybatis-plus的批处理方法saveBatch时发现速度特别慢,测试从10 ...

  9. java,如何处理大批量数据插入

    由于做公司业务,由于数据量太大,一条条插入数据非常缓慢.(记得是插入60w单表数据,就要半个多小时,处理完后只需要几秒了) 后来,自己操作的是通过拼接sql语句,比如 insert into pers ...

最新文章

  1. SICP学习笔记(P27-P28)
  2. 【易创课堂】第3期,最后2天报名啦!
  3. jax-rs jax-ws_Google App Engine JAX-RS REST服务
  4. Django ORM中原生JSONField的使用方法
  5. Java 判断是否包含指定的子串 contains()
  6. Thread 相关函数和属性
  7. 字符串、数组处理方法总结
  8. Web 前端开发者必知CSS 属性
  9. 太阳粒子是什么东西_太阳粒子流是什么
  10. 十分钟倒计时flash_Flash 101-第6部分:最终倒计时
  11. mysql XA 分布式事务、DTM TCC事务(多语言支持)
  12. 每天被信息轰炸的你,如何辨别新闻真假?
  13. 如何将自己写的项目发布到外网上
  14. PHP微信公众号文章编辑排版工具源码+采集功能/附教程
  15. 题解:艾米利亚的魔法
  16. 备战面试日记(2.4) - (JVM.GC算法)
  17. Autodesk Revit 2023 三维建模软件中文正式版安装说明
  18. c语言输出法雷序列,法雷(法里)序列 - osc_h0wb1wlt的个人空间 - OSCHINA - 中文开源技术交流社区...
  19. 唱响艾泽拉斯_职业篇
  20. table表头行固定

热门文章

  1. 安卓12鸿蒙,安卓12,鸿蒙OS2相继发布,微软Windows也坐不住了!
  2. R语言评价分类器性能
  3. html八数码问题求解过程的可视化,(转贴)数字拼图问题(八数码)求解过程动态演示...
  4. 谷歌浏览器adobe flash player的相关问题
  5. InnoDB的全文索引
  6. 为Linux编译atheros ar1111(设备ID:168c:0037,AW-NB100H – AR5B225 Atheros half size)网卡驱动...
  7. 流动的数据——使用 RxJS 构造复杂单页应用的数据逻辑
  8. git使用MERGING处理
  9. 【Linux】循序渐进学运维-服务篇-rysnc原理
  10. 简单使用tf.app.run()、tf.logging和tf.app.flags机制