MySQL - изменение FT_MIN_WORD_LEN

Недавно я попросил администратора моего сервера для моего выделенного сервера Windows изменить файл конфигурации MySQL (my.cnf), чтобы разрешить поиск слов из 2 или более символов по сравнению со значением по умолчанию 4.

Они сказали, что изменили его, перезапустили MySQL и перезагрузили сервер, но я не заметил никаких изменений. Я перестроил индексы только для таблиц, которые использует этот конкретный сценарий, используя метод REPAIR TABLE, но все еще не работает должным образом.

Нужно ли мне перестраивать все индексы для всех таблиц, даже если они не используются для этого полнотекстового запроса?

ИЗМЕНИТЬ

Это правильно? После поиска на моем сервере файлов my.ini? 5.0 - это моя последняя версия.

введите описание изображения здесь


person TheCarver    schedule 18.01.2012    source источник


Ответы (1)


Этих изменений должно было быть достаточно. Вы должны проверить, запустив это:

show variables like 'ft_min_word_len';

Обычно, если вы меняете ft_min_word_len, вы также хотите изменить ft_stopword_file, поскольку многие короткие слова также являются стоп-словами. Вы можете просто установить для этой переменной значение "", если вам не нужны стоп-слова. В противном случае укажите путь к альтернативному файлу игнорируемых слов. Это может быть вашей проблемой, в зависимости от того, что вы ищете.

person Ike Walker    schedule 18.01.2012
comment
Короткие слова, которые я ищу, - это имена, такие как Аль Пачино, Аль Мюррей, Том Круз, Ян Райт ... очевидно, не удается найти их имена. Я только что выполнил ваш запрос, и ft_min-word-len вернул 4 еще. Я так понимаю, что изменения, внесенные администраторами сервера, не вступили в силу. - person TheCarver; 19.01.2012
comment
В этом случае убедитесь, что изменение было внесено в раздел [mysqld] файла my.cnf. Если он находится в неправильном разделе, это не сработает. - person Ike Walker; 19.01.2012
comment
Я ошибся, это файл my.ini (windows), а переменная находится в разделе [mysql] файла. Я только что выполнил поиск файлов my.ini на своем сервере и обнаружил 3 и странную схему их расположения. Я приложил снимок экрана к своему вопросу в качестве редактирования, верно? - person TheCarver; 19.01.2012
comment
Файлы должны быть C: \ windows \ my.ini или C: \ my.ini, и переменная должна быть установлена ​​в разделе [mysqld], а не в разделе [mysql]. - person Ike Walker; 19.01.2012
comment
Привет, @Ike. Рассмотрите возможность включения этой дополнительной информации из комментариев в свой ответ. - person TRiG; 04.06.2013