Как сбросить стоп-слова в MYSQL? - PullRequest
7 голосов
/ 28 апреля 2009

Я хочу сбросить список стоп-слов в mysql для поиска FULLTEXT. Я установил сервер WAMP в моей системе, которая имеет phpmyadmin для доступа к MySQL. Но я не знаю, как сбросить стоп-слово в phpmyadmin. Может кто-нибудь сказать, пожалуйста, как это сделать.

Я также http://dev.mysql.com/doc/refman/5.1/en/server-system-variables.html#sysvar_ft_stopword_file прочитал эту ссылку, но не знаю, как ее использовать ???

Ответы [ 5 ]

11 голосов
/ 28 апреля 2009

Я предполагаю, что вы используете WampServer .

Щелкните значок на панели задач, выберите MySQL, затем нажмите my.ini. Файл конфигурации откроется в блокноте. Перейти в конец файла и добавить эту строку (после строки порта):

 ft_stopword_file=''

для отключения стоп-слов. Если вы хотите использовать пользовательский файл стоп-слов, замените эту строку на:

ft_stopword_file='path/to/stopword_file.txt'

(конечно, укажите путь к файлу стоп-слова).

После установки этой строки сохраните файл конфигурации (Файл -> Сохранить). Затем щелкните значок на панели задач, выберите MySQL, затем Service, затем нажмите Restart Service.

Чтобы убедиться, что ваша конфигурация выполнена правильно, откройте phpMyAdmin в браузере, нажмите на вкладку Variables вверху, затем найдите ft stopword file и посмотрите значения, которые ему заданы.

0 голосов
/ 13 декабря 2013

У меня была такая же проблема. Файл стоп-слов должен быть включен в раздел [mysqld] файла my.ini.

[туздЫ] ft_stopword_file = 'D: /stop.txt' затем

имя таблицы восстановления таблицы работало для меня.

0 голосов
/ 22 мая 2011

У меня та же проблема, я не думаю, что вам нужно что-либо перекомпилировать, я читал, что вы можете использовать консоль mysql SET ft_stopword_file = 'path / to / stopword_file.txt', которая не требует перезагрузки ваш сервер. но я не думаю, что это продлится до следующего перезапуска, поэтому я думаю, что я попробую файл конфигурации и посмотрю, работает ли он

0 голосов
/ 05 августа 2009

Вы можете найти список стоп-слов для использования здесь: https://dev.mysql.com/doc/refman/5.6/en/fulltext-stopwords.html. Я сохранил этот список в файл и сослался на него из файла конфигурации MySQL (например, ft_stopword_file='path/to/stopword_file.txt').

Я удалил слова «оно» и «мы» из списка стоп-слов, поскольку они означают «Информационные технологии» и «Соединенные Штаты» в моей проблемной области.

К сожалению, каждый раз, когда вы меняете список стоп-слов, вы должны перезапускать MYSQL и перестраивать полнотекстовые индексы.

0 голосов
/ 28 апреля 2009

Список стоп-слов, с которыми поставляется MySQL (по крайней мере, для MyISAM), можно найти в источнике MySQL, в myisam/ft_static.c.

Обратите внимание, что это только английские стоп-слова. Предположительно, стоп-слова для других языков определены в другом месте ...

Вы можете переопределить или отключить список стоп-слов по умолчанию, используя директиву ft_stopword_file, как указано в комментариях. Полная документация здесь .

...