我在mysql中使用全文搜索来搜索我拥有的视频数据库,但是当我搜索我的视频时,一些结果将永远不会被返回,因为我搜索的标题小于MySQL设置中设置的ft_min_word_len。
mysql_query("SELECT MATCH(videoDescription) AGAINST('".$searchString."' IN NATURAL LANGUAGE MODE)
FROM videos
LIMIT ".$start.",".$end."");
我尝试启动mysql控制台来更改设置,但是它告诉我它是只读的。我看到的唯一可能的解决方案是在启动时使用选项文件覆盖设置。如何在启动时使用选项文件将ft_min_word_len覆盖为2?
答案 0 :(得分:5)
ft_min_word_len
是一个系统变量,必须在启动MySQL服务器时设置。
这可以通过使用包含选项的文件在用于启动MySQL的命令行上传递参数或(推荐,我会说)来完成 - 通常,例如,像/etc/my.cnf
或/etc/mysql/my.cnf
可以解决问题。
有关设置系统变量的更多信息,您可以查看本手册的以下部分:
此外,请不要忘记在更改该参数后您必须重建全文索引,因此会考虑新值。