这是从 SQL 获取数据的简单 perl 脚本。读取数据并写入文件 OUTFILE,每 10000 行在屏幕上打印数据。
我很好奇的一件事是,在屏幕上打印数据非常快(在 30 秒内)终止,但是,在文件上获取和写入数据的速度非常慢(30 分钟后)。
数据量不大。输出文件大小小于 100Mbyte。
while ( my ($a,$b) = $curSqlEid->fetchrow_array() )
{
printf OUTFILE ("%s,%d\n", $a,$b);
$counter ++;
if($counter % 10000 == 0){
printf ("%s,%d\n", $a,$b);
}
}
$curSqlEid->finish();
$dbh->disconnect();
close(OUTFILE);