Transient mysqlcheck errors about "size of datafile" (file too small)

Posted by Adam Backstrom on Server Fault See other posts from Server Fault or by Adam Backstrom
Published on 2011-01-16T20:32:32Z Indexed on 2011/01/16 20:54 UTC
Read the original article Hit count: 116

Filed under:

Running mysqlcheck on a live database is giving me transient errors like this one:

mydatabase.mytable
error    : Size of datafile is: 500719688         Should be: 501000484
error    : Corrupt

When I run the command again or check the table one-off using mysql, it's listed as OK. Is this just a side effect of running checks on live tables? Is it possible that data is not flushed, hence the strange discrepancy?

We moved several databases this morning by shutting down mysqld on the source and rsyncing files across to the new server, but these are all MyISAM tables so I don't believe the two things are related. (But I mention it just in case.)

© Server Fault or respective owner

Related posts about mysql