Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.0k views
in Technique[技术] by (71.8m points)

mysql - 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?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

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;

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...