php+mysql中迅速插入百万条测试数据的方法

72 篇文章 1 订阅
16 篇文章 2 订阅

1.php代码:

<?php 
$t=mktime(); 
set_time_limit(1000); 
$myFile="c:/insert.sql"; // 需要在c盘下新建insert.sql
$fhandler=fopen($myFile,'wb'); 
if($fhandler){ 
 
$i=0; 
while($i<1000000)//1,0000,000 
{ 
$i++; 
$sql="$i\t'bb'"; 
fwrite($fhandler,$sql."\r\n"); 
} 
echo"写入成功,耗时:",mktime()-$t; 
} 
//注意字段不再以逗号分割,以\t分割,条记录以\r\n分割。

在insert.sql中生成的部分数据截图:
在这里插入图片描述
2.在mysql中运行代码:

LOAD DATA local INFILE 'c:/insert.sql' INTO TABLE `cache`(`id`, `name`); 

注意:在插入大数据之前先将表的主键、唯一键删除,不然每插入一条数据都会和之前的数据进行对比是否重复。待数据新增完以后再设置主键、唯一键。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值