有时为了做性能测试,需要向mysql中插入大量的测试用数据,以下介绍几种方法:
第一种方法:先用PHP脚本生成数据,然后导入到mysql
1)创建一张名为archives的数据表,数据表结构见下图
2)写一个用于生成测试数据的PHP脚本,测试数据假设要10000条,并写入到e:\insert.sql这个文件里
<?php
$file_path = 'e:/insert.sql';
set_time_limit(0);
$start_time = microtime(true);
// 生成10000条数据,并写入到文件中
for ($i = 0; $i < 10000; $i++) {
$timestamp = time();
// $content就是代表一行数据,每个字段之间使用\t隔开,换行符可以使用UNIX风格的\n
$content = "'This is a long title'\t'RockyLiang'\t{$timestamp}\t'hello this is the very long content'\n";
file_put_contents($file_path, $content, FILE_APPEND);
echo "write the $i records complete\n";
}
$end_time = microtime(true);
$spend = $end_time - $start_time;
echo "complete: {$spend} seconds\n";
?>
3)执行PHP脚本,用了4分多钟,比较久,test4.php是PHP脚本的名字
4)在mysql的命令行界面中执行以下命令(可以重复执行增加数据量),即可将刚才生成的数据插入到数据表,10000条记录只需要0.5秒。。。