数据库表如下

mysql> select * from tb_account;

+----+-------+------+

| id | name | age |

+----+-------+------+

| 1 | ciaos | 3 |

| 2 | stone | 6 |

+----+-------+------+

安装sphinx

yum install sphinx libsphinxclient-devel

配置sphinx代替mysql全文索引(/etc/sphinx/sphinx.conf)(详细配置可参照 sphinx 配置文件全解析)

source account_src

{

type = mysql

sql_host = localhost

sql_user = root

sql_pass =

sql_db = test

sql_port = 3306

sql_query_pre = SET NAMES utf8

sql_query = \

SELECT * \

FROM tb_account

#sql_attr_uint = idx_id

sql_field_string = name

sql_attr_uint = age

}

index account_idx

{

source = account_src

path = /var/lib/sphinx/account_src

docinfo = extern

charset_type = utf-8

}

indexer

{

mem_limit = 32M

}

searchd

{

listen = 127.0.0.1:9312

listen = 9306:mysql41

log = /var/log/sphinx/searchd.log

query_log = /var/log/sphinx/query.log

read_timeout = 5

max_children = 30

pid_file = /var/run/sphinx/searchd.pid

max_matches = 1000

seamless_rotate = 1

preopen_indexes = 1

unlink_old = 1

workers = threads # for RT to work

binlog_path = /var/lib/sphinx

}

创建全量索引

indexer --config /etc/sphinx/sphinx.conf --all

启动后台搜索服务

searchd --config /etc/sphinx/sphinx.conf

可设置crontab定期构建索引

indexer --config /etc/sphinx/sphinx.conf --rotate account_idx

测试(自带search工具已不可用,可参照这里),所以需要源码安装sphinx的php扩展

wget https://pecl.php.net/get/sphinx-1.3.3.tgz

phpize && ./configure && make &&make install<?php $s = newSphinxClient;$s->setServer("localhost", 9312);$s->setMatchMode(SPH_MATCH_ANY);$s->setMaxQueryTime(3);$result = $s->query("stone");var_dump($result);?>

运行php test.php

array(10) {

["error"]=>

string(0) ""

["warning"]=>

string(0) ""

["status"]=>

int(0)

["fields"]=>

array(1) {

[0]=>

string(4) "name"

}

["attrs"]=>

array(2) {

["name"]=>

int(7)

["age"]=>

int(1)

}

["matches"]=>

array(1) {

[2]=>

array(2) {

["weight"]=>

int(1)

["attrs"]=>

array(2) {

["name"]=>

string(5) "stone"

["age"]=>

int(6)

}

}

}

["total"]=>

int(1)

["total_found"]=>

int(1)

["time"]=>

float(0)

["words"]=>

array(1) {

["stone"]=>

array(2) {

["docs"]=>

int(1)

["hits"]=>

int(1)

}

}

}

mysql sphfiks_使用sphinx索引mysql数据相关推荐

  1. mysql在线上建索引,mysql 5.6在线DDL建索引测试

    基本信息: mysql版本: (product)root@localhost [(none)]> select @@version; +------------+ | @@version  | ...

  2. mysql什么是覆盖索引,MySQL中的覆盖索引

    索引覆盖 Extra字段显示Using index,索引处取得的数据即是要求的数据,则不会再回数据文件再查询,直接返回了. explain select id from account where i ...

  3. MySQL时间查询不走索引,MySQL带时间字段的范围查询不走索引了?

    今天群里抛出了个乍看之下很迷的问题: 看到问题的第一瞬间,我想这是什么原理,比较方向的修改就能引起索引失效了?于是我自己先试了一下. 环境:MySQL 5.7.25 1. 创建测试表 我先整了个32万 ...

  4. MySQL深度剖析之索引专题(2021)

    9.1 为什么需要使用索引 第一:减少了MySQL需要扫描的数据量,尤其是全表扫描 第二:随机IO变成顺序IO,提升查询速度 可以快速匹配where子句.排序和分组也可以使用索引,匹配原则最左匹配.特 ...

  5. mysql json类型数组索引_MySQL JSON 类型数据操作

    1.Java 中动态扩展字段,会导致数据库表被锁,在MySQL 5.7.8版本之前,因为MySQL不能直接操作JSON类型数据,可以将一个字段设定成varchar类型,里面存放JSON格式数据,这样在 ...

  6. mysql索引排序算法_MySQL中利用索引对数据进行排序的基础教程

    MySQL中,有两种方式生成有序结果集:一是使用filesort,二是按索引顺序扫描.利用索引进行排序操作是非常快的,而且可以利用同一索引同时进行查找和排序操作.当索引的顺序与ORDER BY中的列顺 ...

  7. solr5.5索引mysql数据(新手总结)

    一 solr5.5环境部署到Eclipse(luna版) solr部署参见:http://blog.csdn.net/csmnjk/article/details/64121765 二 Ik分词器设置 ...

  8. MySql索引查询优化 千万级数据普通查询和建立索引后数据查询耗时对比

    前言 索引:拿汉语字典的目录页(索引)打比方,我们可以按拼音.笔画.偏旁部首等排序的目录(索引)快速查找到需要的字. 索引分单列索引和组合索引. 单列索引,即一个索引只包含单个列,一个表可以有多个单列 ...

  9. 【MySQL】InnoDB行格式、数据页结构以及索引底层原理分析

    目录 一.MySQL架构图 二.InnoDB数据页结构 2.1 局部性原理 2.2 InnoDB的数据页格式 三.InnoDB的行格式 3.1 Compact行格式 3.1.1 变长字段长度列表 3. ...

最新文章

  1. Create Custom Instruments
  2. C语言易错题集 第三部
  3. 表达提交返回信息_盘锦市2020年义务教育阶段招生入学信息服务平台家长填报指南...
  4. java 内部类异常_Java笔记(三 内部类、异常、编程规范)
  5. Java教程:SpringBoot常用配置
  6. 不能执行已经释放掉的Script代码!(已解决)
  7. Linux安装配置Redis CentOS 7 下安装Redis
  8. 【qduoj - 纳新题】凑数题(恰好装满类0-1背包 或 母函数)
  9. 网页不显示样式的解决方向之一
  10. 代码的自动生成...
  11. 51单片机 - 红外遥控时钟
  12. 大一新生计算机课word知识,大一计算机结业论文
  13. 那些值得我们用心体会的惊艳歌词
  14. 2020年10月 Hacktoberfest 纪念版T恤还是种树
  15. 英语语音篇 - 自然拼读大全
  16. Java毕业设计-流浪动物救助系统
  17. 五金行业:强行业性的进销存系统具体看三项
  18. 【初识C语言】从头到尾了解C语言这一篇足矣
  19. 内存大计算机运行就快吗,提高电脑内存的运行速度的方法你会吗
  20. java娘_初识java这个小姑娘(二)

热门文章

  1. Python网络爬虫开发实战,微博宫格验证码的识别
  2. Python3 网络爬虫:漫画下载,动态加载、反爬虫这都不叫事
  3. collections模块之defaultdict
  4. ProjectEuler 5
  5. 【CCF】201712-2游戏
  6. 关联规则应用场景实例十则
  7. RDL(C) Report Design Step by Step 3: Mail Label
  8. 混合模型简介与高斯混合模型
  9. 局部敏感哈希(LSH)
  10. 单目摄像头光学图像测距_摄像头与毫米波雷达(Radar)融合解析