导入8GB的mysql dump需要很长时间

| 我已经用mysqldump创建了一个8GB的InnoDB表的MYSQL数据库转储。我使用以下方式导入数据:
mysql -uroot -p my_db < dump.sql
一个小时内导入了5 GB的数据库转储。 8 GB的转储需要50个小时并进行计数。当我检查流程清单时   显示流程清单; 大多数情况下,只有一个INSERT查询可见,状态为“ \'正在释放项目\” 除了复制原始文件之外,还有什么方法可以加快导入过程?     
已邀请:

bab

真正的诀窍是确保最大的单个表适合innodb缓冲池。如果没有,插入(当然还有导入)将非常慢。 整个数据库的大小无关紧要,但最大的单个表却无关紧要。 对于较大的数据库,您可能需要考虑传输数据库的其他方法,例如文件系统快照。如果您的计算机运行的是相同版本的数据库,操作系统和体系结构,那么这当然是最好的。     
机器有多少内存?我的第一个猜测是该计算机具有6gb或8gb的内存,而mysql能够将第一个转储完全保留在内存中,但在第二次导入时却以某种方式交换了核心。您可以在执行导入操作时将
vmstat 5
运行几次迭代,并查看系统交换的强度吗?     

要回复问题请先登录注册