在mysql数据库中制作千万级测试表 前言: 建表语法: CREATE TABLE usertest( id serial, uname varchar(20), ucreatetime datetime, age int(11)) ENGINE=MYISAM DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci AUTO_INCREMENT=1 ROW_FORMAT=COMPACT; 2 创建插入数据存储过程 delimiter $$ SET AUTOCOMMIT = 0$$ create procedure test() begin declare v_cnt decimal (10) default 0 ; dd:loop insert into usertest values (null,'用户1','2013-01-01 00:00:00',20), (null,'用户2','2013-01-01 00:00:00',20), (null,'用户3','2013-01-01 00:00:00',20), (null,'用户4','2013-01-01 00:00:00',20), (null,'用户5','2014-01-01 00:00:00',20), (null,'用户6','2014-01-01 00:00:00',20), (null,'用户7','2014-01-01 00:00:00',20), (null,'用户8','2015-01-01 00:00:00',20), (null,'用户9','2015-01-01 00:00:00',20), (null,'用户0','2015-01-01 00:00:00',20) ; commit; set v_cnt = v_cnt+10 ; if v_cnt = 1000000 then leave dd; end if; end loop dd ; end;$$ delimiter ; 3 执行存储过程 call test; 耗时:用i5的笔记本执行也只需要95秒的时间 4 根据需要修改engineer (非必要步骤,如果不需要转换无需操作) alter table usertest engine=innodb; 耗时:用i5的笔记本执行也只需要200秒的时间