# 1214 - The table type used does not support FULLTEXT indexes

I get a message that the table type does not support FULLTEXT indexes. How can I achieve this?

Here is my table:

CREATE TABLE gamemech_chat ( id bigint(20) unsigned NOT NULL auto_increment, from_userid varchar(50) NOT NULL default '0', to_userid varchar(50) NOT NULL default '0', text text NOT NULL, systemtext text NOT NULL, timestamp datetime NOT NULL default '0000-00-00 00:00:00', chatroom bigint(20) NOT NULL default '0', PRIMARY KEY (id), KEY from_userid (from_userid), FULLTEXT KEY from_userid_2 (from_userid), KEY chatroom (chatroom), KEY timestamp (timestamp) ) ; 

*

+65
mysql
Jan 07 '14 at 5:02
source share
5 answers

Prior to MySQL 5.6 Full-text search is only supported using MyISAM Engine.

So either change the engine for your table to MyISAM

 CREATE TABLE gamemech_chat ( id bigint(20) unsigned NOT NULL auto_increment, from_userid varchar(50) NOT NULL default '0', to_userid varchar(50) NOT NULL default '0', text text NOT NULL, systemtext text NOT NULL, timestamp datetime NOT NULL default '0000-00-00 00:00:00', chatroom bigint(20) NOT NULL default '0', PRIMARY KEY (id), KEY from_userid (from_userid), FULLTEXT KEY from_userid_2 (from_userid), KEY chatroom (chatroom), KEY timestamp (timestamp) ) ENGINE=MyISAM; 

Here is the SQLFiddle demo

or upgrade to 5.6 and use InnoDB full-text search.

+91
Jan 07 '14 at 5:08
source share

The problem arose due to the wrong table type. MYISAM is the only type of table supported by Mysql for full-text indexes.

To fix this error run after sql.

  CREATE TABLE gamemech_chat ( id bigint(20) unsigned NOT NULL auto_increment, from_userid varchar(50) NOT NULL default '0', to_userid varchar(50) NOT NULL default '0', text text NOT NULL, systemtext text NOT NULL, timestamp datetime NOT NULL default '0000-00-00 00:00:00', chatroom bigint(20) NOT NULL default '0', PRIMARY KEY (id), KEY from_userid (from_userid), FULLTEXT KEY from_userid_2 (from_userid), KEY chatroom (chatroom), KEY timestamp (timestamp) ) ENGINE=MyISAM; 
+16
Jan 07 '14 at 5:11
source share

Only MyISAM allows FULLTEXT, as shown here .

Try the following:

 CREATE TABLE gamemech_chat ( id bigint(20) unsigned NOT NULL auto_increment, from_userid varchar(50) NOT NULL default '0', to_userid varchar(50) NOT NULL default '0', text text NOT NULL, systemtext text NOT NULL, timestamp datetime NOT NULL default '0000-00-00 00:00:00', chatroom bigint(20) NOT NULL default '0', PRIMARY KEY (id), KEY from_userid (from_userid), FULLTEXT KEY from_userid_2 (from_userid), KEY chatroom (chatroom), KEY timestamp (timestamp) ) ENGINE=MyISAM; 
+7
Jan 07 '14 at 5:10
source share

Just do the following:

  1. Open your .sql file with Notepad or Notepad ++

  2. Find InnoDB and replace everything (about 87) with MyISAM

  3. Save, and now you can import the database without errors.

-one
Sep 05 '18 at 8:06
source share

************* Allowed - # 1214 - The table type used does not support FULLTEXT indexes ***************

Its very simple to solve this problem. People here respond with very difficult words that are not easy to understand for people who are not technical.

So, I mention here, the steps in simple words will help solve your problem.

1.) Open the .sql file with Notepad by right-clicking on the file> Edit or Just open the Notepad file and drag the file into Notepad and the file will open. (Note: Please do not change the .sql file extension as its still its sql database. Also save a copy of your sql file to save yourself from any unwanted event)

2.) Click on "Menu" Notepad "Edit"> "Replace" (the "Window" window will open "Find what will replace with fields")

3.) In the "Find Which Field" field, enter ENGINE = InnoDB and "Replace with Field" Enter ENGINE = MyISAM

4.) Now click Replace All

5.) Press CTRL + S or File> Save

6.) Now download this file, and I'm sure your problem will be resolved ....

-5
May 19, '16 at 20:29
source share



All Articles