从文件导入大型数据库 - 在表被锁定时检查表大小

时间:2016-10-17 17:10:49

标签: mysql

我有一个用mysqldump创建的sql文件,大约有30GB,我现在必须将它导入数据库。问题是,在较大的表上,插入所有内容需要花费大量时间(比如2小时以上),而且我无法检查full process list以外的其他内容。

我不能在这些表上使用count,或类似的东西,因为整个表都被锁定了。有没有办法检查插入了多少数据,还有多少要插入?

1 个答案:

答案 0 :(得分:1)

您可以尝试首先加载数据的子集,比如说1000行,然后测量需要多长时间:

head -n 1001 yourdump.sql > yourdump_first1000.sql

转储文件yourdump_first1000.sql应包含前1000行。您可以查看加载所需的时间,并将其与文件大小进行比较。从这一点,也许你可以推断出30GB需要多长时间。