After repairing my database I received the following error:

note : The storage engine for the table doesn't support repair
note : The storage engine for the table doesn't support repair

I found out that some type of table on my database are InnoDB and the other are MyISAM. It seems that I was using MyISAM before I upgraded my drupal to D7. All new tables are created using InnoDB.

Now, my question is what type should I use? InnoDB or MyISAM?
Is the type of table depends on MySQL installation?
If MyISAM is better how can I change InnoDBto MyISAM? or vice versa.


dnewkerk’s picture

A new Drupal 7 install will be InnoDB by default. They decided this is best for Drupal (I don't recall the reasons offhand, though google to find info). If you upgrade a Drupal 6 site to 7, it won't change the preexisting tables to InnoDB, though I believe any new tables Drupal 7 adds will be InnoDB. When I upgraded my own site and noticed this, I decided to change all my tables to InnoDB, so it would be more like a clean Drupal 7 install. I believe this article (and possibly other references) helped me do this:

Of course, back up your database and put your site in offline mode before proceeding.

mbahlol’s picture

my hosting disable innoDB and tell me to convert to myISAM. i thought there would be some trouble (i hope not). but this line makes me a rather calm down. " (though a MyISAM database will continue to work just fine in Drupal 7)".