如何将大型数据集导入mysql - 正确的方法?

时间:2011-08-27 10:30:04

标签: mysql import bulkinsert mysqlimport

我有一个400MB * .sql文件,它是MySQL数据库的转储。我现在想将其导入新数据库。我使用phpmyadmin,但几分钟后它就会中断,因为它无法处理如此大的数据集(达到最大文件大小限制)。所以我使用了以下内容:

通过SSH登录。 通过mysql工具选择数据库。 命令:source mybackup.sql

现在查询运行但现在运行超过3个小时。有什么不对或真的需要这么久?

谢谢, WorldSignia

2 个答案:

答案 0 :(得分:3)

mysql databaseName < mybackup.sql

我认为这是最快的速度。

答案 1 :(得分:1)

如果尚未完成,您可以在导入之前使用set autocommit=0关闭自动提交。否则InnoDB将在每COMMIT个语句后INSERT。这可能有所帮助。

您也可以关闭辅助唯一键和外键以提供帮助。有关更多创意,请参阅此链接:

http://dev.mysql.com/doc/refman/5.5/en/optimizing-innodb-bulk-data-loading.html