Я использую FULLTEXT как индекс в текстовом поле в mysql. Это значит, что я могу продолжить поиск FULLTEXT позже.
Значение по умолчанию для FULLTEXT nr символов равно 4. Это изменяется в этой строке внутри файла my.cnf или my.ini:
[mysqld]
ft_min_word_len=4
Согласно моей веб-хостинговой компании (one.com), они не ЗНАЮТ ценность, И НЕВОЗМОЖНО ее изменить. Я связался с ними несколько раз, но это то, что они говорят.
Итак, мой Q, может ли любой веб-хост изменить это? и если да, то как?
ИЛИ, следует ли мне изменить FULLTEXT на что-то еще и как-нибудь обойти его?
Спасибо
UPDATE:
Проверьте эту ссылку: http://dev.mysql.com/doc/refman/5.1/en/fulltext-fine-tuning.html
Если у меня есть поисковый запрос, а строка содержит 2 буквы, вы не можете найти индекс FULLTEXT с ft_min_word_len = 4, потому что он будет игнорировать все строки с большим количеством символов, чем это значение...
UPDATE2
Я хочу, чтобы иметь возможность искать целые слова в поле таблицы mysql. Когда я использую оператор "LIKE", если у меня есть значение поля "mercedes", и если я только напишу "merc", он даст поле "mercedes" в результате... Я хочу только совместить целые слова.
В конкретном случае вашего веб-хостера, похоже, что они просто не хотят изменять значение. Может быть, ваш экземпляр MySQL будет совместно использоваться другими учетными записями в одном и том же поле?
Я плачу примерно за 60 долларов за собственный корневой сервер, который у меня есть для меня, и вся эта вещь - моя игровая площадка; Я могу обменять всю операционную систему, если захочу. Однако в зависимости от приложения имеет смысл пойти на менее дорогой план. Существуют различные хостинг-серверы с виртуальным хостингом, где вы получаете то, что выглядит вам как корневой сервер, но на самом деле является виртуальной машиной. Вы можете играть со всем, даже с правами root, но вы не получаете все ресурсы коробки. Я могу составить такой план примерно за 13 долларов в месяц, может быть, меньше, если я буду ходить по магазинам.
Что касается вашего конкретного требования по сокращению ft_whatzit: Пожалуйста, подумайте, что это, вероятно, очень плохая идея. Там по умолчанию минимальный минимум равен 4. Есть много, много двухбуквенных слов, которые не вносят никакого значения в ваш полный текстовый индекс, но вносят огромный вклад в его размер. По сути, с порогом, установленным настолько низким, ваш индекс становится примерно таким же, как (в) эффективным для поиска в качестве исходного текста, и преимущество использования полнотекстового поиска.
Разумный способ сделать это: когда кто-то просит вас найти несколько слов, используйте только слова ft_min_word_len длиной или дольше в поиске, игнорируйте крошечные слова; затем извлеките и просмотрите полные тексты, которые вы получите от этого, и отбросьте все, что не содержит ваших крошечных слов. Если кто-то ищет только слова из 3-х символов или меньше, скажите им "нет" по соображениям эффективности или напрямую сканируйте полный текст каждого текста, если хотите быть красивым, и они настаивают.
Это параметр конфигурации mySQL, который, если он изменен, повлияет на весь сервер. Очень маловероятно, что ваш провайдер изменит его для вас. Если вам действительно нужно это изменить, подумайте об аренде сервера, как рекомендует Carl Smotricz.