今天有同学问题,搜索ip的时候怎样能把

select ip from tabelx where ip like '%192.168.0.1%'

这种句子的性能优化。

的确,使用 like %x 的方式,数据库没办法使用索引,一定会进行整表扫描,所以我们需要避免这种方法。之前同事叫我尝试一下用 match() against 的方法。于是顺便试了试,

——前提:全文索引只支持MyISAM表

select * from `data`.`test` where match (ip) against('') 

这样搜索出来没有结果。google了一会儿,发现网上的例子都是搜索英文单词的,于是在ip里面混了点英文单词试了一下,有结果。

再google后发现,mysql默认对全文检索有单词的字符限制,即:

ft_max_word_len 84

ft_min_word_len 4

所以这里的ip没法搜索,因为用 . 分隔的会被当成是一个单词,ip只有3位。

于是把ft_min_word_len修改为1,重启mysqld服务,修复表,重建索引,搜索成功。

这里并不是支持这样搜索ip,ip搜索一般把IP地址存成 UNSIGNED INT,然后用转换函数进行搜索,参考:http://coolshell.cn/articles/1846.html


下面是关于全文检索的一些介绍:

---to be continue

mysql FullText全文索引的问题的更多相关文章

  1. MySQL使用全文索引(fulltext index)---高性能

    转载地址:https://blog.csdn.net/u011734144/article/details/52817766/ 1.创建全文索引(FullText index) 旧版的MySQL的全文 ...

  2. MySQL使用全文索引(fulltext index)

    1.创建全文索引(FullText index) 旧版的MySQL的全文索引只能用在MyISAM表格的char.varchar和text的字段上. 不过新版的MySQL5.6.24上InnoDB引擎也 ...

  3. MySQL索引结构之Hash索引、full-text全文索引(面)

    Hash索引 主要就是通过Hash算法(常见的Hash算法有直接定址法.平方取中法.折叠法.除数取余法.随机数法),将数据库字段数据转换成定长的Hash值,与这条数据的行指针一并存入Hash表的对应位 ...

  4. MySQL中文全文索引插件 mysqlcft 1.0.0 安装使用文档[原创]

    [文章+程序 作者:张宴 本文版本:v1.0 最后修改:2008.07.01 转载请注明原文链接:http://blog.zyan.cc/post/356/] MySQL在高并发连接.数据库记录数较多 ...

  5. MySQL 之全文索引

    最近在复习数据库索引部分,看到了 fulltext,也即全文索引,虽然全文索引在平时的业务中用到的不多,但是感觉它有点儿意思,所以花了点时间研究一下,特此记录. 引入概念通过数值比较.范围过滤等就可以 ...

  6. paip.mysql fulltext 全文搜索.最佳实践.

    paip.mysql fulltext 全文搜索.最佳实践.  作者Attilax  艾龙,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blo ...

  7. mysql开启全文索引功能

    注意:全文检索模块需要mysql开启全文索引功能,开启方法:修改mysql配置文件:window服务器为my.ini,linux服务器为my.cnf,在 [mysqld] 后面加入一行“ft_min_ ...

  8. fulltext全文索引的使用

    Fulltext全文索引 Fulltext相关属性 查看数据库关于fulltext的配置 SHOW VARIABLES LIKE 'ft%'; -- ft就是FullText的简写 ft_boolea ...

  9. fulltext不支持Mysql中文全文索引

    Mysql对某表某字段建立了fulltext索引,也不支持中文. 当数据量很大的时候,比较成熟的做法是使用专门的全文索引系统,用这些专业的全文索引系统来分词,以mysql数据库中的数据作为数据源,来分 ...

随机推荐

  1. logstash启动脚本

    1  nohup ./redis-server 1>log.log 2>error.log &  2 nohup ./elasticsearch -f & 3 nohup ...

  2. 搭建持续集成单元测试平台(Jenkins+Ant+Java+Junit+SVN)

    一.环境准备 Jenkins: 到官网下载jenkins.war包:http://jenkins-ci.org/ 安装方法有两种: 把下载下来的jenkins.war包放到文件夹下,如C:\jenki ...

  3. Zabbix-Agent在主动模式启动服务后,提示no active checks on server [139.219.xx.xx:10051]: host [139.219.xx.xx] not found

    一.解决方法

  4. spring boot 运行提示:Process finished with exit code 1

    spring boot 运行提示:Process finished with exit code 1 经检查发现是由于在application.properties配置文件中将某些自定义配置项移除了, ...

  5. XWindow、Server、Client和QT、GTK之间的关系

    X WINDOW X Window从逻辑上分为三层:X Server.X Client和X协议.最底层的X Server(X服务器)主要处理输入/输出信息并维护相关资源,它接受来自键盘.鼠标的操作并将 ...

  6. SSH使用Log4j

    1. 将Jar文件log4j-1.2.14.jar导入项目. 2. 在src文件夹下新建log4j.properties文件: log4j.rootLogger = debug,stdout,D,E ...

  7. VB控件 与 引用或部件

    序号 控件名 部件或引用 用途 2 ActiveMovie Microsoft ActiveMovie Control    3 ADODB Windows ADO Ext. 2.8 for DLL ...

  8. 原生Ajax使用教程

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6682564.html    浏览器端 一:创建XMLHttpRequest对象       所有现代浏览器均支 ...

  9. col-xs , col-sm , col-md , col-lg是什么意思?什么时候用?

    .col-xs- 超小屏幕 手机 (<768px) .col-sm- 小屏幕 平板 (≥768px) .col-md- 中等屏幕 桌面显示器 (≥992px) .col-lg- 大屏幕 大桌面显 ...

  10. 【DB2】查看表空间对应的物理文件地址

    使用的命令: db2 list tablespaces show detail db2 list tablespace containers for [Tablespace ID] [show det ...