基于mysql 批量插入100w测试数据

最近在学习MySQL优化问题,所以先插入100w行数据以供测试,自己学习总结出来的方法供大家参考。

1.先建数据库,这个很简单就不用说了

2.在数据库里 面建一张表,我用的是emp,代码如下

基于mysql 批量插入100w测试数据

id作为主键自动增长相当于计数器吧,default默认值,这张表是一张员工信息表,大家可供自己的需求建表。ename表示名字,deptno表示部门,job职业 创建日期等等

3.再插入大数据之前把参数改一下

showvariables like 'log_bin_trust_function_creators;默认为off 

用语句set globallog_bin_trust_function_creators=1;即可

4.创建函数  随机字符串,用来表示不同的姓名和部门信息


基于mysql 批量插入100w测试数据


基于mysql 批量插入100w测试数据


5.接着创建存储过程


基于mysql 批量插入100w测试数据


这些都弄好以后,已经做完90%的工作量了

最后调用这个函数即可,由于前面用过

DELIMITER $$ 所以用

DELIMITER  ;改回结束标志 ,最后用 call insert_emp(10001,1000000)即可。


查看数据库 已有100w数据  部门37w行数据如下

基于mysql 批量插入100w测试数据

插入100w数据到这里就结束了,欢迎大家多讨论交流