使用批量插入创建MySQL InnoDB转储?

时间:2011-11-10 00:34:24

标签: mysql bulkinsert

我需要加快将sql.gz文件导入mysql的速度。我已关闭外键检查并按this page

我的问题是:

有没有办法从mysqldump用户多插入语句中创建导出文件(sql.gz),如下所示:

INSERT INTO yourtable 
VALUES (1,2), (5,5), ...;

这样批量加载过程会快得多?

1 个答案:

答案 0 :(得分:4)

mysqldump默认执行此操作。还有许多其他选项(例如使用REPLACE或INSERT IGNORE而不是默认的INSERT命令)运行mysqldump --help来查看列表。

您可以尝试LOAD DATA INFILE来查看是否更快。这将从没有任何INSERT命令的制表符分隔文本文件中读取数据。您可以使用SELECT ... INTO OUTFILE'file_name'作为创建此数据文件的一种方法。