mysql插入一百万条数据竟然用了42分钟 有更快的操作吗?为什么会这样慢?

mysql插入一百万条数据竟然用了42分钟 有更快的操作吗?为什么会这样慢?

问题描述:

delimiter %%

CREATE PROCEDURE add_age()

BEGIN

DECLARE i INT;

set i =0;

WHILE i<1000000 DO

INSERT INTO stu_test (name,age) VALUES (i,i);

SET i= i+1;

END WHILE;

END

%%

CALL add_age();

这里是存储过程

  1. insert批量执行(最好事务中进行插入处理)
  2. 开启事务处理,批量提交。
  3. 主键顺序插入,效率更高

使用表数据复制100万条数据,只需要17.675秒就能达到数百万条数据
图片说明