今天打算学习一下百万级数据的查询,但是心想上哪找百万的数据呢,索性脚本填吧!第一反应是用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
完事~~~~~~~~~~~