mysql - 为什么导入 SQL 这么慢?

我有一个 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了解更多信息。

https://stackoverflow.com/questions/10227078/

相关文章:

linux - 如何在 Linux 上记录内存消耗?

linux - 使用 shell 脚本将行附加到/etc/hosts 文件

c - 如何知道linux调度器时间片?

c - 枚举中这些#define 的目的是什么?

linux - 如何通过命令提示符检查 Linux 中的 BIOS 版本或名称?

c - Linux 中的 bluetooth/bluetooth.h 位于何处?

linux - 从 FTP 服务器下载所有文件

linux - 通过 linux x86-64 函数调用保留了哪些寄存器

linux - 我可以阅读 Linux 内核的哪些部分以获得乐趣?

linux - 您如何确定 bash ls 颜色的含义?