快速插入100w条数据

时间:2021-12-28 20:14:29

今天打算学习一下百万级数据的查询,但是心想上哪找百万的数据呢,索性脚本填吧!第一反应是用while or  for ,尝试了一下,太慢了(老长时间了),时间就是金钱啊,然后就找了到了这个办法

LOAD DATA LOCAL INFILE A INTO TABLE B

A 文件名 

B 数据库字段名字

然后就开始往A里面写文件了,写文件花了5s,代码如下

$t=time();
set_time_limit(1000);
$myFile="./insert.txt";
$data=fopen($myFile,'wb');
if($data){
    $i=0;
    while($i<1000000)
    {
        $type = rand(1,2);
        $i++;
        $sql="$i\t'我是第".$i."个'\t'".time()."'\t$type";//用的\t,没用逗号
        fwrite($data,$sql."\r\n");
    }
    echo"写入成功,耗时:",time()-$t;
}
 

接着就在mysql里面执行了 上边的命令

LOAD DATA LOCAL INFILE './insert.sql'  INTO TABLE  data (id,name,ctime,type)
1000000 rows affected in 4s 738ms


完事~~~~~~~~~~~