我可以通过在配置文件的[mysqld]
部分下添加这一行来设置它一个新值:my.cnf
ft_min_word_len = 3 // or any other length
但我不想那样。我想知道,我可以在特定查询中这样做吗?我有这个查询:
select * from mytable where match(mycol) against(:val)
我想改变ft_min_word_len
只是为了上面的查询。我不想在 MySQL 配置文件中更改它。我的意思是我想为其他查询设置另一个最小字长。
简短的回答:不可能。
长答案...
在构建任何 MyISAM
FULLTEXT
索引时使用该设置。您应该更改为 InnoDB,在这种情况下innodb_ft_min_token_size
是要设置的变量。(默认为 3。)如果在构建索引后更改设置,则对现有索引或使用这些索引的查询没有影响。
更改它的唯一方法是 (1) 将其更改为
my.cnf
,然后 (2) 在您想要新长度的任何表上重建索引。