0

I am using MySQL with InnoDB engine for my website. While creating a table with FULLTEXT index, it is throwing an error:

"The used table type doesn't support fulltext indexs"

What are the alternatives I can use? I don't want to use MyISAM because InnoDB is more advanced. Any way to remove this error?

I am using PHP, MySQL, Apache on Windows machine.

sumit
  • 10,935
  • 24
  • 65
  • 83
  • 1
    the following answer may be of interest http://stackoverflow.com/questions/4732067/complex-query-for-recreating-fulltext-search-effect-on-innodb/4732982#4732982 – Jon Black Aug 14 '11 at 13:52

2 Answers2

4

FULLTEXT indexes are only supported by the MyISAM engine ; so, if you want your table to be in InnoDB, you won't have much of a choice.

If fulltext searching is an important part of your website/application, you might want to use something else than database, for the indexing/searching part -- typically, some dedicated solution, like Solr.

Pascal MARTIN
  • 395,085
  • 80
  • 655
  • 663
  • Hi Pascal, thanks for the answer. Are there any alternatives available? – sumit Aug 14 '11 at 13:45
  • 2
    this is not true anymore.Starting with MySql 5.6 you have fulltext search on Innodb too. See http://blogs.innodb.com/wp/2011/07/innodb-full-text-search-tutorial/ – cristian Aug 14 '11 at 13:46
  • 1
    Given that 5.6 GE is not out yet, I'd say Pascal's statement still holds true ;) – Mchl Aug 14 '11 at 13:48
3

Wait until MySQL 5.6 - InnoDB is going to support FULLTEXT searches since then ;)

But if you can't wait, you can use for example SphinxSE, which lets you use Sphinx fulltext search engine on your MySQL tables with plain SQL

Mchl
  • 61,444
  • 9
  • 118
  • 120
  • Within six months I'd say (given how 5.5 had been released). I have no real information about that though. – Mchl Aug 14 '11 at 13:53