1.生成数据需要的工具
- mysql
- version:8.0.25
- mysql workbench
2.生成数据的步骤
1.创建表
2.创建存储过程
3.调用存储过程
3.具体步骤
3.1创建表
create table data_test( id int not null auto_increment primary key comment '主键', c1 varchar(40) comment 'uuid' ) comment 'test_data';
表结构很简单,只有ID和uuid两列
3.2创建存储过程
CREATE DEFINER=`root`@`localhost` PROCEDURE `init_data`(i integer) BEGIN declare j int; set j=0; repeat insert into data_test(c1) values (uuid()); set j=j+1; until j>=i end repeat; END
存储过程中的参数i是生成的数据条数
3.3调用存储过程
call init_data(10000000)
4.bug
在调用存储过程时,出现的bug如下:
Error Code: 2013. Lost connection to MySQL server during query
image.png
在执行插入操作30s时报错了
解决方案:
选择mysql workbench下的preferences,如下:
image.png
将
sql editor的配置项read timeout从30s更改为600s
image.png
要注意的是:上图修改的配置是全局配置
点击ok后,清除之前插入的数据,重新登录mysql workbench,然后重新调用存储过程即可