views:

198

answers:

2

Has anyone ever encountered MySQL corruption after performing a graceful server reboot?

Just worries me because I have never had that happen before. What could be the causes?

+1  A: 

MyISAM is infamous for it, especially in older versions. This also affects all other engines, all engines use MyISAM to store their table information (information schema uses MyISAM).

The cause is unknown, it's a very old bug. You could try REPAIR, a work around created for this problem.

Good luck!

Frank Heikens
Thanks for your response! 1+
a432511
+1  A: 

Index changes to MyISAM tables are not immediately flushed to disk for performance reasons. If your MySQL server is killed before the indexes are completely flushed to disk, then there is an inconsistency between the data (which is flushed asap) and the indexes. In this case, myisamchk in repair mode can fix the indexes (which is pretty much the same as REPAIR table, but is more flexible in the amount of memory it uses and hence its speed).

Martin