我目前正在上传维基百科的转储文件之一。它有 1GB 压缩和约 7GB 未压缩。它已经导入了 6 个小时。MySQL 中导入表的大小目前为 1.5GB(数据+索引)。会一直导入直到表的大小达到7GB吗?
注意:数据库的数据目录在外部硬盘上。考虑到这只是一个发展,所以我并不关心真实的表现。
我假设您是通过 ssh 连接的,或者您正坐在电脑前。打开一个单独的窗口并在 mysql 中运行此查询:
SHOW PROCESSLIST;
Run Code Online (Sandbox Code Playgroud)
前几天我刚刚导入了一个 3GB(未压缩)的 db,我相信这个查询向我展示了导入过程的确切位置。
就我而言,表格是按字母顺序导入的,所以我确切地知道它的进度。
另外,请查看此stackoverflow question的答案以了解终止进程与终止查询。
小智 6
不能说大小,但您可以尝试检查转储中的最后一个条目或条目数量,然后检查数据库中当前的最后一个条目。这可能会帮助您确定导入完成所需的时间。
导入数据的大小甚至可能比未压缩的 7GB 还要大,因为索引通常不包含在转储中,而是在插入时构建的。
作为旁注:这也是一种加速导入本身的方法:在导入过程中删除索引并在稍后重建它,这帮助我多次加快速度。