如何解决导入8GB的mysql dump需要很长时间
| 我已经用mysqldump创建了一个8GB的InnoDB表的MYSQL数据库转储。我使用以下方式导入数据:mysql -uroot -p my_db < dump.sql
一个小时内导入了5 GB的数据库转储。 8 GB的转储需要50个小时并进行计数。当我检查流程清单时
显示流程清单;
大多数情况下,只有一个INSERT查询可见,状态为“ \'正在释放项目\”
除了复制原始文件之外,还有什么方法可以加快导入过程?
解决方法
真正的诀窍是确保最大的单个表适合innodb缓冲池。如果没有,插入(当然还有导入)将非常慢。
整个数据库的大小无关紧要,但最大的单个表却无关紧要。
对于较大的数据库,您可能需要考虑传输数据库的其他方法,例如文件系统快照。如果您的计算机运行的是相同版本的数据库,操作系统和体系结构,那么这当然是最好的。
,机器有多少内存?我的第一个猜测是该计算机具有6gb或8gb的内存,而mysql能够将第一个转储完全保留在内存中,但在第二次导入时却以某种方式交换了核心。您可以在执行导入操作时将
vmstat 5
运行几次迭代,并查看系统交换的强度吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。