alreadymysqlsql

mysql生成千万级数据

2022-04-07  本文已影响0人  CXY_XZL

1.生成数据需要的工具

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';

表结构很简单,只有IDuuid两列

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 timeout30s更改为600s
image.png

要注意的是:上图修改的配置是全局配置

点击ok后,清除之前插入的数据,重新登录mysql workbench,然后重新调用存储过程即可

上一篇 下一篇

猜你喜欢

热点阅读