如何在Ubuntu 10.10上安装Sphinx

如何在Ubuntu 10.10上安装Sphinx

首先,这是我的第一篇文章,我为不好的英语道歉。

Sphinx是一种全文搜索引擎,按GPL版本2进行公开发布。商业许可(例如嵌入式使用)可根据要求提供。 您可以使用Sphinx创建大数据索引。 它支持MySQL,PostgreSQL,ODBC。

如果使用Ubuntu 10.10,可以使用

sudo apt-get install sphinxsearch

安装Sphinx。

Sphinx使用配置文件( /etc/sphinxsearch/sphinx.conf )。 您应该将此文件调整为您的配置。

vi /etc/sphinxsearch/sphinx.conf

conf文件由四部分组成:

来源 :数据源定义

index :数据源的索引设置

索引器 :由索引器设置(导致路径,字符集等)组成

searchd :searchd设置

好的 - 这是一个配置文件示例:

source src1
{
type = mysql
sql_host = localhost
sql_user = test
sql_pass =
sql_db = test
sql_port = 3306 # optional, default is 3306
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
sql_query_info = SELECT * FROM documents WHERE id=$id
}

index test1
{
source = src1
path = /var/lib/sphinxsearch/data/test1
docinfo = extern
charset_type = sbcs
}

indexer
{
mem_limit = 32M
}

searchd
{
port = 9312
log = /var/log/sphinxsearch/searchd.log
query_log = /var/log/sphinxsearch/query.log
read_timeout = 5
max_children = 30
pid_file = /var/run/searchd.pid
max_matches = 1000
seamless_rotate = 1
preopen_indexes = 0
unlink_old = 1
}

我使用MySQL本教程。您可能需要调整参数,您必须在MySQL中创建数据。 例如:

Mysql转储文件:

DROP TABLE IF EXISTS test.documents;

CREATE TABLE test.documents

id INTEGER PRIMARY KEY NOT NULL AUTO_INCREMENT,

group_id INTEGER NOT NULL,

group_id2 INTEGER NOT NULL,

date_added DATETIME NOT NULL,

title VARCHAR(255)NOT NULL,

内容TEXT NOT NULL

);

REPLACE INTO test.documents(id,group_id,group_id2,date_added,title,content)VALUES

(1,1,5,NOW(),'test one','这是我的测试文档第一,也检查短语内的搜索。

(2,1,6,NOW(),'test two','这是我的测试文件二号'),

(3,2,7,NOW(),'另一个文档','这是另一个组'),

(4,2,8,NOW(),'doc number four','这是测试组');

DROP TABLE IF EXISTS test.tags;

CREATE TABLE test.tags

docid INTEGER NOT NULL,

tagid INTEGER NOT NULL,

UNIQUE(docid,tagid)

);

INSERT INTO test.tags VALUES

(1,1),(1,3),(1,5),(1,7),

(2,6),(2,4),(2,2),

(3,15),

(4,7),(4,40);

最后你必须跑

sudo indexer test1

好。

现在我们来试试 :)

你跑

search "test"

如果没有问题,你应该看到一个结果。

您可以使用Sphinx进行更多功能。您可以在源代码上定义索引和属性。

您可以在这里阅读有关Sphinx的更多详细信息: http : //sphinxsearch.com/docs/1.10/

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏