Thoughts that are my own.

InnoDB Shows Disabled

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.

Stop mysql.

/etc/init.d/mysql stop

Move or delete the ib_logfile0 and ib_logfile1 files.

mv ib_logfile0 ib_logfile0.bak

mv ib_logfile1 ib_logfile1.bak

Restart mysql.

/etc/init.d/mysql start

That’s it. Now issuing the show engines command results in a YES for InnoDB.

Originally posted Oct 2010