【发布时间】:2013-11-10 00:51:59
【问题描述】:
我想在我的数据库中插入大约数百万条记录,但是速度非常慢,速度约为 40,000 条记录/小时,我不认为我的硬件太慢,因为我看到 diskio 低于 2 MiB/s。我有许多表分隔在不同的 .sql 文件中。单条记录也很简单,一条记录少于15列,一列少于30个字符。我在archlinux下使用mysql 5.3完成了这项工作。你们有什么想法吗?还是这个速度不慢?
【问题讨论】:
-
您应该能够每分钟上传 40k 行。如何导入记录?
-
瓶颈是什么?你是如何插入记录的?您能否以某种方式对此进行分析以确定哪个部分需要很长时间?
-
您也可以使用准备好的语句——也就是说,如果您通过编程语言插入。
-
实际上 ich 从 sqlite 数据库中转储了所有表并保存为 .sql 文件。我想使用以下命令将这些表导入 mysql-server:mysql -u user -p database table1(
field1,field2)值(“data1”,“data2”);插入table1(field1,field2)值(“data1”,“data2”); ......(百万行)