吉林市网站建设_网站建设公司_小程序网站_seo优化
2025/12/18 8:21:12 网站建设 项目流程

背景:
有个需求,需要向数据库插入300万数据,测试一个性能

这里使用存储过程来循环插入

先看第一次的插入,非常慢,十分钟只写入十几万条

delimiter$$createprocedureauto_insert1()BEGINdeclareiintdefault1;while(i<3000000)doinsertintos1values(i,'chens','male',concat('chens',i,'@qqcom'));seti=i+1;selectconcat('chens',i,'_ok');endwhile;END$$delimiter;

再来看下面的,利用事务批量提交,30秒钟全部插入完成

DELIMITER$$CREATEPROCEDUREauto_insert1()BEGINDECLAREiINTDEFAULT1;DECLAREbatch_sizeINTDEFAULT10000;DECLAREmax_iINTDEFAULT3000000;SETautocommit=0;STARTTRANSACTION;WHILEi<max_iDOINSERTINTOs1VALUES(i,'chens','male',CONCAT('chens',i,'@qqcom'));SETi=i+1;IFi%batch_size=0THENCOMMIT;STARTTRANSACTION;ENDIF;ENDWHILE;COMMIT;SETautocommit=1;END$$DELIMITER;

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询