注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

~~

~~

 
 
 

日志

 
 

mysql 全文索引  

2013-05-24 16:57:50|  分类: mysql |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

Mysql全文索引:

1.mysql使用全文索引fulltext的前提条件

  a.表的类型必须是MYISAM

  b.要建立全文索引字段的类型必须是charvarchartext

2.建立全文索引的前期配置

 由于Mysql的默认配置是索引的词的长度是4,所以要支持中文单字的话,首先更改这个.
*Unix用户要修改my.cnf,一般此文件在/etc/my.cnf,如果没有找到,先查找一下find / -name 'my.cnf'
在 [mysqld] 位置内加入
ft_min_word_len = 2 
其它属性还有
ft_wordlist_charset = gbk 
ft_wordlist_file = /home/soft/mysql/share/mysql/wordlist-gbk.txt 
ft_stopword_file = /home/soft/mysql/share/mysql/stopwords-gbk.txt 
注释:
ft_wordlist_charset 表示词典的字符集目前支持良好的有(UTF-8, gbk, gb2312, big5) 
ft_wordlist_file 是词表文件每行包括一个词及其词频(用若干制表符或空格分开,消岐专用
ft_stopword_file  表示过滤掉不索引的词表一行一个
ft_min_word_len 加入索引的词的最小长度缺省是 4, 为了支持中文单字故改为

3.建立全文索引

在建表中用FullText关键字标识字段,已存在的表用 ALTER TABLE (或 CREATE INDEX) 创建索引CREATE fulltext  INDEX index_name ON table_name(colum_name);

Alter table tablename add fulltext(column1column2);

4.使用全文索引

    selectwhere字句中用match函数,索引的关键词用against标识in bolean mode是只有含有关键字就行,不用在乎位置,是不是起启位置.
SELECT * FROM articles WHERE MATCH (tags) AGAINST ('旅游' IN BOOLEAN MODE);

5.为什么先建表在创建索引比在创建表时创建索引的速度快?

mysql 全文索引 - zera - 123

 


     mysql 全文索引 - zera - 123

 

 


  评论这张
 
阅读(173)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018