简介

Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,Python,Perl,Ruby等,同时为MySQL也设计了一个存储引擎插件。

Sphinx单一索引最大可包含1亿条记录,在1千万条记录情况下的查询速度为0.x秒(毫秒级)。Sphinx创建索引的速度为:创建100万条记录的索引只需 3~4分钟,创建1000万条记录的索引可以在50分钟内完成,而只包含最新10万条记录的增量索引,重建一次只需几十秒。

Sphinx 安装

首先,下载Sphinx安装包Sphinx 下载

使用ftp软件上传到服务器,解压安装包

 tar zxvf sphinx-2.2.10-release.tar.gz

进入解压后的安装包目录:

cd sphinx-2.2.10-release

编译安装:

./configure --prefix=/usr/local/sphinx –-with-mysql
make && make install

安装完成之后,安装libsphinxclient.

libsphinxclient 安装

进入目录(sphinx解压后安装包里面):

cd api/libsphinxclient/

编译安装:

./configure –prefix=/usr/local/sphinx
make &&  make install

安装Sphinx PHP扩展

Sphinx PHP 扩展下载地址下载

上传服务器,解压:

tar zxf sphinx-1.3.1.tgz

进入目录:

cd sphinx-1.3.1

编译安装,执行命令(下面这个命令根据你PHP安装的位置而定):

/usr/local/php/bin/phpize

然后编译安装:

./configure --with-php-config=/usr/local/php/bin/php-config --with-sphinx=/usr/local/sphinx/
make && make install

安装完成之后,进入/usr/local/sphinx/etc/目录下:

cd /usr/local/sphinx/etc

复制一份默认的配置文件:

cp sphinx.conf.dist sphinx.conf

将sphinx.conf里面的数据库地址,账号密码改下就好了

/usr/local/sphinx/bin/searchd

则会看到相关的信息了.

在执行这一步的时候如果有报错:

/usr/local/sphinx/bin/searchd:error while loading shared libraries:libmysqlclient.so.18 cannot opent shared object file: No such file or directory 

主要是因为安装的数据库的过程中,环境变量配置问题,生成个软链接就可以了

ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18

这样安装部分就完成了.