mac 下 sphinx + mysql + php 实现全文搜索(xampp)(1)
- 原理:
- 使用sphinx 中的indexer 生成索引数据
- service/web 端 利用searched 调用索引数据
- 步骤:
- 下载 sphinx:
- 下载地址:http://sphinxsearch.com/downloads/release/ 这个可以根据自己电脑的系统来下载相应的安装包。
- ps:我是mac,所以 我下载了mac安装包,按照文档上的安装 发现不行,后来 我下载了第一个 即 Source tarball (tar.gz), 才安装成功的。
- 安装sphinx
- 参考地址:http://sphinxsearch.com/docs/current.html#compiling-from-source 一步步来就可以了。主要是 configure的配置,其他都一样。我是xampp 所以写成
./configure--prefix=/usr/local/sphinx --with-mysql=/Applications/XAMPP/xamppfiles。然并卵,./configure--prefix=/usr/local/sphinx 其实就可以了。 - cd /usr/local/sphinx/ 查看 这个目录下,有了bin,etc,var 三个文件夹,就是安转成功了。
- 参考地址:http://sphinxsearch.com/docs/current.html#compiling-from-source 一步步来就可以了。主要是 configure的配置,其他都一样。我是xampp 所以写成
- 使用sphinx 中的indexer工具 来 对数据表 建立索引数据
- indexer 的位置: /usr/local/sphinx/bin
- 方法:bin/indexer -c etc/sphinx.conf test1
- 问题1:sphinx.conf 是什么 。
- sphinx.conf 是 sphinx 的配置文件
- 位置 /usr/local/sphinx/etc,没有的话,自己新建一个或者复制一个
- 问题2:test1 是什么:需要建立索引文件的 索引名称,在配置文件中有些
- 所以需要先 配置好 sphinx.conf 文件,
- 参考地址:http://www.sphinxsearch.org/sphinx-tutorial
- 参考地址:http://www.apoyl.com/?p=290
- 各个配置项的说明,参考:http://sphinxsearch.com/docs/current.html#conf-reference
- 配置好各个参考。保存,执行3.1。居然报错,提示语:Library not loaded: libmysqlclient.18.dylib 网上 查了下,貌似是 文件不存在
- 参考地址:http://blog.sina.com.cn/s/blog_68f3bc280100supn.html
- 因为我用的是xampp,并不是原生态的mysql,所以文件不存在 也是合理的。
- 我去xampp中找到了 类似文件 /Applications/XAMPP/xamppfiles/lib/libmysqlclient.18.dylib。然后执行 sudo ln -s /Applications/XAMPP/xamppfiles/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
- 在 执行 3.1 的命令行。发现 ok了。
- 查看 cd /usr/local/sphinx/var/data/.(sphinx.conf文件里面有些索引的路径即 path) 发现 存在了 。
这些数据,既 针对test1的索引数据,生成成功了。
- ps:--rotate参数可以在不停searchd的情况下索引,不然的话会有类似如下的提示:
FATAL: failed to lock /usr/local/...... Resource temporarily unavailable, will not index. Try --rotate option.
方法:bin/indexer -c etc/sphinx.conf test1 --rotate
- 测试索引是否可以使用
- /usr/local/sphinx/bin/searchd --config /usr/local/sphinx/etc/sphinx.conf --status
- 查看sphinx 的数据
- mysql -h0 -P9306
- 使用mac 自带的终端 输入 mysql -h0 -P9306,怎么没起到作用,我去(command not found)。
- 原来当你输入命令时,系统会在/usr/bin这个位置里寻找你输入的命令,如果你没有把命令引入到这个位置,无论你直接cd到工具具体的位置调用,也是白费功夫的。只要把这个工具的绝对位置引入到/usr/bin,所有的问题就迎刃而解了,只要我们把这条命令执行sudo ln /Applications/XAMPP/xamppfiles/bin/mysql /usr/bin
- 此时 我们再次输入 mysql -h0 -P9306,就可以进入sphinx的数据库了。
- 再附上 进入mysql数据库的命令行 :mysql -u root -p
- 我的配置:
- mac os x 10.10.5
- x86_64
- xampp
- 下载 sphinx:
mac 下 sphinx + mysql + php 实现全文搜索(xampp)(1)的更多相关文章
- mac 下 sphinx + mysql + php 实现全文搜索(xampp)(3)sphinx 的配置项解析
source:数据的来源,数据是从什么地方来的. index:索引,当有数据源之后,从数据源处构建索引.索引实际上就是相当于一个字典检索.有了整本字典内容以后,才会有字典检索. searchd:提供搜 ...
- mac 下 sphinx + mysql + php 实现全文搜索(xampp)(4)php api 解析
1:function GetLastError() // 假如报错的话,会输出报错信息 2:function GetLastWarning ()// 输出 警告信息 3:function SetSe ...
- 配置apache,及mac下安装mysql
先打开apache,在浏览器上输入 localhost 回车后会如果屏幕上显示:It works! 如下图: 这说明你的apache已开启 在window下配置apache: 1.找到apa ...
- mac 初次配置apache,及mac下安装mysql
先打开apache,在浏览器上输入 localhost 回车后会如果屏幕上显示:It works! 如下图: 这说明你的apache已开启 mac 下apache配置(mac自带apache ...
- mac 下安装 mysql (蛋疼)
mac先安装mydql步骤 1.首先从官网上下载 mac版本的mysql:我的是mysql-5.7.20-macos10.12-x86_64.dmg 2.正常安装: 3.在系统偏好设置的最底下.1:是 ...
- Mac下安装MySQL 5.6.40
Mac下安装MySQL 5.6.40 - 干勾鱼的CSDN博客 - CSDN博客 原创 Mac下安装MySQL 5.6.40 2018-06-18 10:34:03 我是干勾鱼 阅读数 5927 ...
- mac 下卸载mysql的方法
今天在mac上瞎折腾时,把mysql玩坏了,想卸载重装,却发现找不到卸载程序,百度了下,将操作步骤备份于此: cd ~/ sudo rm /usr/local/mysqlsudo rm -rf /us ...
- Mac下安装Mysql出现 Can’t connect to local MySQL server through socket '/tmp/mysql.sock'
在Mac下安装mysql出现 Can't connect to local MySQL server through socket '/tmp/mysql.sock' 错误,解决如下: $ unset ...
- Mac下安装MySQL及启动等常用命令
总结了下mac下的mysql安装步骤: eclipse JavaEE 下载 JDK -9 macosx下载 一.安装及启动服务 1. MySQL Server 下载.(以mys ...
随机推荐
- js与asp.net后台交互
1.如何在JavaScript访问C#函数? 2.如何在JavaScript访问C#变量? 3.如何在C#中访问JavaScript的已有变量? 4.如何在C#中访问JavaScript函数? 问题1 ...
- javascript的变量、作用域和内存问题
基本类型和引用类型的值执行环境垃圾收集 ECMAScript 变量可能包含两种不同数据类型的值:基本类型值和引用类型值.基本类型值指的是简单的数据段引用类型值指那些可能由多个值构成的对象 基本数据类型 ...
- 【报错】"The constructor Notification(int, CharSequence, long) is deprecated
Notification的构造方法 Notification(int, CharSequence, long) 在API11之后就淘汰了,之后的API需要用Notification.Builder() ...
- Wince 中的图形编程
图形编程程序当中,笔者主要要和大家讨论的是画刷的创建和使用以及绘图函数,比如2D图像的绘制等等. *画刷的定义: HBRUSH hBrush; *画刷的类型: 1. 系统内置画刷:GetStockOb ...
- poj 2553 强连通分支与缩点
思路:将所有强连通分支找出来,并进行缩点,然后找其中所有出度为0的连通分支,就是题目要求的. #include<iostream> #include<cstdio> #incl ...
- 如何更好的理解(pageX,pageY,clientX,clientY,eventX,eventY,scrollX,scrollY,screenX,screenY,event.offsetX,event.offsetY,offsetLeft,style.left)
1 pageX,pageY:鼠标指针相对于当前窗口的X,Y坐标,计算区域包括窗口自身的控件和滚动条.(火狐特有) 2 event.clientX,event.clientY:鼠标指针相对于当前窗口的X ...
- 小议jQuery中的事件
学了jQuery这么长时间,到这里真的有一种柳暗花明又一村的感觉,在这里先表达一下自己学这一章节的happy心情吧(在严厉的金工实习老师眼皮底下偷偷学习,当然还有各种nerves~). 1加载DOM ...
- HTTP - Cookie 机制
HTTP 是种无状态的协议,即使用 HTTP 协议时,每次发送请求都会产生对应的新响应,协议本身不会保留之前一切的请求或响应报文的信息.这是为了更快地处理大量事务,确保协议的可伸缩性,而特意把 HTT ...
- NGUI的原理机制:深入剖析UIPanel,UIWidget,UIDrawCall底层原理
这是我去搜狐畅游面试时,面试官问的一个问题.问NGUI的机制原理是什么?就是这个插件是根据什么写出来的.当时没答上来,下面是我从转载过来的,可以研究研究. 之前项目中用的NGUI的版本是3.0.7 f ...
- 【转载】颜色空间-RGB、HSI、HSV、YUV、YCbCr的简介
转载自缘佳荟的博客. 颜色通常用三个相对独立的属性来描述,三个独立变量综合作用,自然就构成一个空间坐标,这就是颜色空间.而颜色可以由不同的角度,用三个一组的不同属性加以描述,就产生了不同的颜色空间.但 ...