- 工信部备案号 滇ICP备05000110号-1
- 滇公安备案 滇53010302000111
- 增值电信业务经营许可证 B1.B2-20181647、滇B1.B2-20190004
- 云南互联网协会理事单位
- 安全联盟认证网站身份V标记
- 域名注册服务机构许可:滇D3-20230001
- 代理域名注册服务机构:新网数码
Sphinx在mysql上的应用有两种方式:
①、采用API调用,如使用PHP、java等的API函数或方法查询。优点是可不必对mysql重新编译,服务端进程“低耦合”,且程序可灵活、方便的调用;
缺点是如已有搜索程序的条件下,需修改部分程序。推荐程序员使用。
②、使用插件方式(sphinxSE)把sphinx编译成一个mysql插件并使用特定的sql语句进行检索。其特点是,在sql端方便组合,且能直接返回数据给客户端
不必二次查询(注),在程序上仅需要修改对应的sql,但这对使用框架开发的程序很不方便,比如使用了ORM。另外还需要对mysql进行重新编译,且需要mysql-5.1以上版本
支持插件存储。系统管理员可使用这种方式
二次查询注:到现在发布版本为止——sphinx-0.9.9,sphinx在检索到结果后只能返回记录的ID,而非要查的sql数据,故需要重新根据这些ID再次从数据库中查询,
正在开发的sphinx 0.9.10版本已可存储这些文本数据,作者曾试过,性能和存储上的效果都不佳,毕竟还没出正式版
本文采用的是第一种方式
在*nix系统下安装,首先需要以下一些软件支持
软件环境:
操作系统:Centos-5.2
数据库:mysql-5.0.77-3.el5 mysql-devel(如果要使用sphinxSE插件存储请使用mysql-5.1以上版本)
编译软件:gcc gcc-c++ autoconf automake
Sphinx :Sphinx-0.9.9 (最新稳定版 )
安装:
[root@localhost ~]# yum install -y mysql mysql-devel
[root@localhost ~]# yum install -y automake autoconf
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# wget http://www.landui.com/downloads/sphinx-0.9.9.tar.gz
[root@localhost src]# tar zxvf sphinx-0.9.9.tar.gz
[root@localhost local]# cd sphinx-0.9.9
[root@localhost sphinx-0.9.9]# ./configure –prefix=/usr/local/sphinx #注意:这里sphinx已经默认支持了mysql
[root@localhost sphinx-0.9.9]# make && make install # 其中的“警告”可以忽略
安装完毕后查看一下/usr/local/sphinx下是否有 三个目录 bin etc var,如有,则安装无误!
售前咨询
售后咨询
备案咨询
二维码
TOP