I'm currently importing a table with about 17 million rows in MySQL. What catches my attention is, the number of row seems to be fluctuate.

I used the command show table status while my importing process was running. One time, I got 1.5 million of rows, then I ran that command again and got lower than 1.5 million. How is that possible?

  • 1
    Got the answer, the innodb engine only estimates the number of rows. For further explanation, please visit this (dev.mysql.com/doc/refman/5.7/en/show-table-status.html) – Ahmad Hayam Jul 1 '16 at 8:25
  • 2
    Put your comment in as an answer and then mark it correct 24 hours later. This might help others with the same problem. I know that something similar puzzled me at one time. – Vérace Jul 1 '16 at 12:29

The answer is innodb only estimates number of rows by command show table status. Please refer to http://dev.mysql.com/doc/refman/5.7/en/show-table-status.html for further explanation.

Not the answer you're looking for? Browse other questions tagged or ask your own question.