Search code examples
mysqlbugzillamysql-error-1214

Converting table from MyISAM to INNODB


I am simply trying to convert a table from MyISAM to INNODB. This is for a bugzilla upgrade with testopia.

This simple command fails. ALTER TABLE table_name TYPE = INNODB;

ERROR 1214 (HY000): The used table type doesn't support FULLTEXT indexes

I know it does not support FULLTEXT indexes, never the less I want it to convert. Would I have to drop the fulltext indexes on the table before conversion? Is there a way to query for them and drop them all?


Solution

  • First, see your CREATE TABLE statement:

    SHOW CREATE TABLE tablename
    

    It will show you all your fulltext indexes like this:

    …,
    FULLTEXT KEY key_name (column_list),
    …
    

    Drop all these keys:

    ALTER TABLE tablename DROP INDEX key_name;
    …
    

    , then convert:

    ALTER TABLE tablename ENGINE=InnoDB;