как исправить полнотекстовый поиск по 3 символам?

Я использовал полнотекстовый поиск mysql. Мой код select * from uh_property WHERE match (имя поля) против ('serach_word')

Теперь, когда я набираю слово из трех символов, запись поиска не отображается. Например, у меня есть запись с именем «эко». Когда я набираю эко в текстовом поле для поиска, запись не отображается.

Я обнаружил, что минимальное количество символов для полнотекстового поиска равно 4. Можно ли как-то решить эту проблему?


person user75472    schedule 15.07.2009    source источник


Ответы (1)


См. раздел Точная настройка полнотекстового поиска MySQL. Сначала вам нужно изменить ft_min_word_len (или innodb_ft_min_token_size для таблиц InnoDB), а затем перестроить индексы полнотекстового поиска.

person Yuval F    schedule 15.07.2009
comment
Спасибо Юваль Ф! Я проверил сайт и раньше, я не могу сделать это для живого сайта, так как сервер не для одного сайта. Любое решение для этого? - person user75472; 15.07.2009
comment
Я что-то здесь упускаю. Не могли бы вы объяснить вашу конфигурацию? У вас есть контроль над сервером mysql? - person Yuval F; 15.07.2009
comment
Да, я использовал [mysqld] ft_min_word_len=3, и это сработало для локального сервера. Теперь мне нужно сделать это на живом сервере. Повлияет ли это на сервер или создаст какие-либо проблемы? Да, у меня есть контроль над сервером MySQL в прямом эфире. - person user75472; 16.07.2009
comment
Я думаю, что перестроение индексов, вероятно, замедлит работу вашего живого сервера. Если возможно, я бы перенаправил трафик с сервера, изменил переменную, перестроил индекс, а затем вернул бы сервер в рабочее состояние. - person Yuval F; 16.07.2009
comment
Спасибо за ответ Юваль. Во-первых, я не мог получить файл my.cnf? Не могли бы вы рассказать, как и где получить доступ к этому файлу на сервере. Мой сервер plesk. Я пытался выяснить, как и где взять этот файл, но не нашел решения. Да, я узнал, что этот файл существует в /home/mydir/ или etc/my.cnf, но не знаю, как увидеть эту папку и файлы. - person user75472; 16.07.2009
comment
Извините, у меня нет опыта работы с plesk. На ванильном Linux-сервере я бы использовал что-то вроде «найти my.cnf», чтобы найти файл. Я просмотрел документацию по plesk, и там, кажется, есть какая-то панель управления администратора, которую вы можете использовать. Возможно, вам следует опубликовать это как отдельный вопрос в ServerFault. Удачи. - person Yuval F; 16.07.2009