慢速MYSQL插入到DB MyISAM

时间:2013-05-24 07:18:41

标签: mysql database innodb myisam

我有一个文件(insert.sql),它有250k行,没有键,没有索引:

INSERT `project_383`.`entity_metrics_build_1` VALUES ('d402afeb4630267f383b99875f37162d', 'ClMaxCycl', '-1');

INSERT `project_383`.`entity_metrics_build_1` VALUES ('d402afeb4630267f383b99875f37162d', 'ClLMethodsCalled', '0');

我使用mysql -u root -p project < insert.sql将其输入myISAM表,总时间为5分钟。

我在另一个帖子中看到,人们说他们可以在1秒内插入数百万行。我真的不明白。有人可以解释一下为什么我的SQL太慢了吗?

我的服务器是16gb Cpu xeon。

1 个答案:

答案 0 :(得分:1)

将它们组合成一个包含多个VALUES子句的INSERT:

INSERT `project_383`.`entity_metrics_build_1`
VALUES ('d402afeb4630267f383b99875f37162d', 'ClMaxCycl', '-1'),
       ('d402afeb4630267f383b99875f37162d', 'ClLMethodsCalled', '0'),
       ...;

如果查看由mysqldump创建的文件,就是这样做的。