ft_min_word_len现在已经过时了吗?

时间:2012-04-01 08:50:47

标签: mysql full-text-search

我正在使用MySQL数据库。

我有一个产品数据库,用户可以在其中搜索他们想要购买的任何产品。

我遇到布尔搜索问题,因为如果用户搜索“new ipad”或“ipad 4g”,我想先返回最相关的结果,但是,我返回的结果与全文索引不准确仅索引超过4个字符的单词。

有解决方法吗?如果我将ft_min_word_len变量更改为2个字符而不是4然后重新索引,那是否会造成巨大的性能损失?

1 个答案:

答案 0 :(得分:0)

您可以减少ft_min_word_len,但它不仅会影响该表,还会影响该服务器上所有MySQL数据库中的所有表。

您的第二个选项是全文搜索引擎,例如Sphinx,可能有一个选项。

您的第三个选择是根据搜索字词更改搜索查询。在程序端,您可以检测文本是否小于ft_min_word_len。如果是,则使用LIKE /% %/运行查询;否则,请使用全文搜索。