我刚从命令行使用 mysqldump 导出了一个150 MB的表。导出它需要大约5秒钟。
但是,当我尝试导入同一个文件时,最多需要5分钟。
为什么导入比导出慢,有没有办法加快速度?我需要导出/导入大于1 GB的表。
是否必须使用锁做一些事情?由于select正在读取数据,因此导出它会更快,导入就是写入数据,因为它需要写锁定,所以可能会更慢。
答案 0 :(得分:1)
阅读比在DBMS中编写简单得多。那是在你考虑事务记录之前。 例如,你必须写一行数据;您还必须更新新行所在表的所有索引。这意味着每个书面记录的数据不仅仅是一个I / O.
答案 1 :(得分:1)
在几乎任何媒体上,写作都比阅读慢。在DBMS中,必须维护索引,必须检查约束,必须分配空间,必须进行事务边界,必须进行事务记录以使回滚起作用,...