我有一个 SQL 文件,其中包含两个总共大约 600,000 行的表。昨天,我尝试将文件导入到我在 Fedora 16 上的 MySQL 数据库中,导入文件花了 2 个多小时。在我的 Windows PC 上花了 7 分钟。我的 Linux 和 Windows 机器具有完全相同的硬件。我的几个 friend 也尝试过,他们也有类似的经历。
我们使用的命令是:mysql -u root database_name < sql_file.sql
.
为什么会有这样的速度差异?
最佳答案
我敢打赌,Fedora 16 尊重事务/同步语义,而 Windows 则不然。如果你算一下,两小时内 600,000 次更新是每分钟 5,000 次。这与磁盘的旋转速度在一个数量级。
您可以尝试将 SET autocommit=0;
添加到导入文件的开头,并将 COMMIT;
添加到末尾。见 this page了解更多信息。
关于mysql - 为什么导入 SQL 这么慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10227078/