mysql 5.6.4以上版本innodb支持全文索引的测试
对于mysql 5.6.4以上版本innodb支持全文索引的测试
在mysql官网,innodb引擎在5.6.4版本提供了对全文索引的支持,笔者对此做了测试,发现对中文全文检索的支持依然不理想,但却确实提供了对英文的全文支持。
12.9.5 Full-Text Restrictions Full-text searches are supported for InnoDB and MyISAM tables only. FULLTEXT index support for InnoDB tables requires MySQL 5.6.4 or higher.
测试过程如下:
1、版本选择,选5.6.27 版。
2、安装完成后,添加全文索引进行测试,表引擎为Innodb
(1)修改ft_min_word_len参数值为1(默认是4,2个汉字)调整全文索引检索字段的最小长度为1个字节;
mysql> show variables like '%ft_min_word_len%';+-----------------+-------+ | Variable_name | Value | +-----------------+-------+ | ft_min_word_len | 1 | +-----------------+-------+1 row in set (0.00 sec)
(2)对表A的content列添加全文索引;
1
|
> alter table ask_questions add fulltext ind_ask_questions_content(content);
|
查看
1
|
>show index from ask_questions;
|
mysql> show index from ask_questions;+---------------+------------+----------------------------------+--------------+------------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | +---------------+------------+----------------------------------+--------------+------------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | ask_questions | 1 | ind_ask_questions_content_cft | 1 | content | NULL | 1 | NULL | NULL | | FULLTEXT | | | +---------------+------------+----------------------------------+--------------+------------------+-----------+-------------+----------+--------+------+------------+---------+---------------+9 rows in set (0.00 sec)
模糊匹配查询,看看包含关键字的行数:
1
|
> select count (*) from ask_questions where content like '%xxx%' ;
|
一共有182行,其中包括四种情况:'%xxx%','%xxx','xxx%','xxx'。
在全文索引查看的时候只能对 'xxx' 这种情况进行检索,其他的行由于汉字与英文字母的断字不一样而忽略掉了;
1
|
select * from ask_questions where MATCH(content) AGAINST ( '好玩吗' ) order by id limit 10;
|
但是其中的行,比如不被空格,"?"等隔开的行,是不会被检索出来的:
1
|
> select * from ask_question_bak where content like '%好玩吗%' limit 10;
|
我们可以通过查看id列看出来差别;
3、myisam中的中文全文索引测试;
对于mysql自带的功能,也是一样的,支持并不是很好。
4、myisam安装mysqlcft插件,测试对中文全文索引的支持;
从coder.google下载mysqlcft,下载地址:https://code.google.com/p/mysqlcft/downloads/list
(1) 解压,安装plugin。
查看插件目录:
1
|
> show variables like '%plugin%' ;
|
+---------------+---------------------------------+ | Variable_name | Value | +---------------+---------------------------------+ | plugin_dir | /usr/local/mysql56//lib/plugin/ |+---------------+---------------------------------+
(2)解压,把mysqlcfg.so文件cp到这个目录下,安装plugin
1
|
> INSTALL PLUGIN mysqlcft SONAME 'mysqlcft.so' ;
|
(3)查看。
1
|
> select * from mysql.plugin;
|
+----------+-------------+ | name | dl | +----------+-------------+ | mysqlcft | mysqlcft.so | +----------+-------------+
安装mysqlcft插件成功;
测试查看查询数目与模糊查询一致,效率提高了300倍左右;
本文转自crazy_charles 51CTO博客,原文链接:http://blog.51cto.com/douya/1732130,如需转载请自行联系原作者
mysql 5.6.4以上版本innodb支持全文索引的测试相关推荐
- MySQL 5.6.5之前版本不支持多条DEFAULT CURRENT_TIMESTAMP和ON UPDATE CURRENT TIMESTAMP
创建数据表时失败,提示以下信息: 09-13-2016 07:47:49 ERROR o.h.t.h.SchemaUpdate [https-jsse-nio-443-exec-6] HHH00038 ...
- 分析型数据库(AnalyticDB)-V2.7版本正式支持全文索引
AnalyticDB 全文索引介绍 背景 大数据处理技术经过若干年的发展,结构化数据检索已经逐渐有了多元化的.丰富的解决方案.但是与此同时,比如文本.图片.视频等非结构化数据的产生速度越来越快,数据量 ...
- Mysql优化系列(1)--Innodb重要参数优化
1.简单介绍 InnoDB给MySQL提供了具有提交,回滚和崩溃恢复能力的事务安全(ACID兼容)存储引擎.InnoDB锁定在行级并且也在SELECT语句提供一个Oracle风格一致的非锁定读.这些特 ...
- MySQL存储引擎之Myisam和Innodb总结性梳理
Mysql有两种常用的存储引擎:InnoDB与Myisam,下表是两种引擎的简单对比 MyISAM InnoDB 构成上的区别: 每个MyISAM在磁盘上存储成三个文件.第一个 文件的名字以表的名 ...
- MySQL存储引擎中MyISAM和InnoDB区别
转载自 MySQL存储引擎中MyISAM和InnoDB区别 MyISAM 和InnoDB 讲解 InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应 ...
- Mysql优化系列(1)--Innodb引擎下mysql自身配置优化
1.简单介绍 InnoDB给MySQL提供了具有提交,回滚和崩溃恢复能力的事务安全(ACID兼容)存储引擎.InnoDB锁定在行级并且也在SELECT语句提供一个Oracle风格一致的非锁定读.这些特 ...
- MySQL数据库5.5.25a版本下载与安装
文章目录 一.MySQL数据库5.5.25a版本下载 1.MySQL数据库下载地址 1.MySQL数据库其他版本下载 二.MySQL数据库安装 1.打开下载好的MySQL数据库安装包 2.点击Next ...
- MySQL学习笔记--常用存储引擎InnoDB与MyISAM总结
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一.MyISAM 特性 1. 并发性与锁级别 2. 表损坏修复 3. MyISAM表支持的索引 4. MyISAM表支持压缩 ...
- MySQL存储引擎 lnnoDB逻辑架构 innodb存储引擎表空间(ibd文件)详解 回滚日志的物理空间
文章目录 存储引擎 一 MySQL组织架构 二 查看存储引擎信息 三 修改存储引擎 3.1 配置文件修改存储引擎 3.2 临时修改存储引擎 3.3 建表时修改存储引擎 四 存储引擎实验 五 数据库升级 ...
最新文章
- 转载一些关于博客的文章
- 不用临时变量交换两个变量的值
- run webIDE application using mock data
- MATLAB编辑GUI界面
- 【软件分析与挖掘】An Empirical Study of Bugs in Build Process
- oracle查询不等于1000,解决oracle查询时 in 大于1000的办法
- 在下列数据类型中、python不支持的是_在下列数据类型中, Python不支持的是_学小易找答案...
- 【PyTorch】Trick集锦
- 机器学习笔记【二】逻辑回归与分类(2):感知机学习算法与逻辑回归的区别,牛顿方法
- 打造自己的Android源码学习环境之六:运行Android模拟器
- html5 java文件上传插件_5个最佳的javascript文件上传插件
- 基于springboot老年人健康体检系统(带论文)
- 结构光三维扫描仪(单相机+单投影仪)
- 开发板识别不了SD/TF卡
- magicyang语录
- java基础题数组_java基础学习——数组笔试题
- MySQL数据库软件及SQL简介
- openwrt软路由实现ipv6 nat 上网配置
- 朋友——friends
- 性能优化: http 请求的过程及潜在的性能优化点
热门文章
- mysql 中 end like,MySQL 这三道必问面试题,你都会吗?
- html boot设置列宽,html - Bootstrap 4:设置列宽固定位置内容的宽度 - SO中文参考 - www.soinside.com...
- 同一个html页面中两个area,HTML中的map和area标签
- java多个类调用_JAVA问题总结之15-多个类之间的调用
- 2017php行情,2017年蔬菜行情特点及未来蔬菜价格走势分析
- matlab中的nlinfit,matlab中nlinfit问题!!!!!!!!!!!!
- matlab数字图像处理课程设计报告,数字图像处理课程设计实验报告.doc
- 计算机刚过国家线能调剂到哪些学校,2020考研:刚过国家线好不好调剂?这4个调剂策略!考生要知道...
- php fpm 安装配置,php php+fpm安装配置
- 静态代码块,构造代码块,局部代码块演示