一、安装Sphinx
1、安装依赖项:在安装Sphinx之前,需要先安装一些依赖项,可以使用以下命令安装:
- sudo yum install y postgresqllibs unixODBC
2、下载并安装Sphinx:移动到/tmp
目录,使用wget
下载Sphinx的安装文件。

- cd /tmp
- wget http://sphinxsearch.com/files/sphinx2.2.111.rhel7.x86_64.rpm
使用yum
命令进行安装:
- sudo yum install y sphinx2.2.111.rhel7.x86_64.rpm
3、验证安装:安装完成后,可以通过以下命令验证Sphinx是否安装成功:
- searchd version
二、配置Sphinx
1、创建测试数据库:需要创建一个用于测试的数据库,可以使用MySQL作为示例,登录MySQL服务器并执行以下命令:
- CREATE DATABASE test;
- USE test;
- SOURCE /usr/share/doc/sphinx2.2.11/example.sql;
2、配置Sphinx:Sphinx的配置文件位于/etc/sphinx/sphinx.conf
,可以使用任何文本编辑器进行编辑,以下是一个基本的配置示例:
- source src1 {
- type = mysql
- sql_host = localhost
- sql_user = root
- sql_pass = password
- sql_db = test
- sql_query = SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content FROM documents
- sql_attr_uint = group_id
- sql_attr_timestamp = date_added
- }
- index test1 {
- source = src1
- path = /var/lib/sphinx/test1
- docinfo = extern
- }
- searchd {
- listen = 9312:sphinx
- log = /var/log/sphinx/searchd.log
- query_log = /var/log/sphinx/query.log
- }
3、启动Sphinx服务:完成配置后,可以通过以下命令启动Sphinx服务:
- sudo systemctl start searchd
如果需要在系统启动时自动启动Sphinx服务,可以运行:

- sudo systemctl enable searchd
三、FAQs(常见问题解答)
问题1:如何检查Sphinx服务是否正在运行?
答案:可以使用以下命令检查Sphinx服务的状态:
- sudo systemctl status searchd
如果服务正在运行,应该看到类似于“active (running)”的状态信息。
问题2:如何进行全文搜索?
答案:Sphinx提供了多种搜索方式,包括通过API或客户端工具进行搜索,以下是一个简单的搜索示例,假设已经启动了Sphinx服务:
- /usr/local/sphinx/bin/search i test1 "this"
i
参数指定了要搜索的索引名称,"this"
是搜索关键词,根据实际需求,可以调整搜索关键词和索引名称。
