mysql全文索引:fulltext

fulltext全文索引

要使用全文索引,不仅需要把某个字段的索引类型设置为fulltext,还需要修改mysql配置文件:

[mysqld]

ft_wordlist_charset #表示词典的字符集
ft_wordlist_file #词表文件,每行一个词及其词频
ft_stopword_file #过滤掉不索引的词表,一行一个
ft_min_word_len #加入索引的词的最小长度,默认为4,为了支持中文单字故可设置为2

如果创建好全文索引之后,我们的表有问题,可以修复一下:

repair table 表名称 quick

SQL中怎么查询?

select * from product where match(name) against('php') limit 0,20;

匹配name字段,这个字段的索引必须是fulltext。

这就是mysql中全文搜索的简单介绍。注意这只适合数据量很小的项目。
实际开发中,推荐使用第三方如 Sphinx(中文版coreseek)或者ElasticSearch

mysql的全文索引full text和sphinx的区别

1)sphinx可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索

2)sphinx是一个独立的服务器,具有很多mysql自身不具备的扩展功能,性能更高,更好的缓解数据库的压力等

猜你喜欢

转载自www.cnblogs.com/-mrl/p/11533868.html