Какой поиск выполнить в InnoDB / MySQL - PullRequest
2 голосов
/ 23 августа 2011

Я провел некоторый поиск в полнотекстовом поиске MySQL InnoDB и обнаружил некоторые из них при переполнении стека, но они либо не дают точного решения, либо устарели, и я думаю, что пришло время для повторного обсуждения.

Все мои таблицы - InnoDB, и я бы предпочел не блокировать всю базу данных с помощью MyISAM.Какие у меня варианты в отношении полнотекстового поиска?Есть ли простые решения?Я хотел бы сделать эквивалент MATCH (content) AGAINST ("my search query" IN BOOLEAN MODE)

Ответы [ 2 ]

2 голосов
/ 23 августа 2011

В Innodb нет эквивалента MATCH ПРОТИВ.Полнотекстовый поиск является одним из преимуществ использования MyIsam.Поэтому вы должны использовать автономный сервер для поиска, такой как Sphinx или Solr

1 голос
/ 13 мая 2013

Полнотекстовый поиск InnoDB (FTS) наконец-то доступен в выпуске MySQL 5.6.4.

Эти индексы физически представлены как целые таблицы InnoDB, на которые действуют ключевые слова SQLнапример, предложение FULLTEXT оператора CREATE INDEX, синтаксис MATCH () ... AGAINST в операторе SELECT и оператор OPTIMIZE TABLE.От FULLTEXT индексы

...