I recently ran across a replication error in mysql that looks a bit like the following:
Error: 'Incorrect information in file… … .frm on query'
If you run the command:
mysql -e 'show engines'
You will see that the InnoDB engine is DISABLED. Since mysql ships with InnoDB enabled by default, this is a strange error.
What it turns out to be, at least in my case, is a corrupted ib_logfile. The fix is fairly simple.
1. Stop mysql.
/etc/init.d/mysql stop
2. Move or delete the ib_logfile0 and ib_logfile1 files.
mv ib_logfile0 ib_logfile0.bak; mv ib_logfile1 ib_logfile1.bak
3. Restart mysql.
/etc/init.d/mysql start
That's it. Now issuing the show engines command results in a YES for InnoDB.