fulltext全文索引php
要使用全文索引,不只須要把某個字段的索引類型設置爲fulltext,還須要修改mysql配置文件:mysql
[mysqld]sql
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)或者ElasticSearchui
mysql的全文索引full text和sphinx的區別spa
1)sphinx能夠提供比數據庫自己更專業的搜索功能,使得應用程序更容易實現專業化的全文檢索code
2)sphinx是一個獨立的服務器,具備不少mysql自身不具有的擴展功能,性能更高,更好的緩解數據庫的壓力等blog