更新依赖包以及安装编译环境

yum -y install m4 autoconf automake libtool


yum -y install gcc gcc-c++ wget


yum -y install mysql-devel



下载coreseek 


wget http://www.coreseek.cn/uploads/csft/3.2/coreseek-3.2.14.tar.gz


##mmseg3是一个中文分词插件


tar xzvf coreseek-3.2.14.tar.gz

cd coreseek-3.2.14

cd mmseg-3.2.14/

./bootstrap

./configure --prefix=/usr/local/mmseg3

make

make install


cd ../csft-3.2.14/

sh buildconf.sh

./configure --prefix=/usr/local/coreseek --without-python --without-unixodbc --with-mmseg --with-mmseg-includes=/usr/local/mmseg3/include/mmseg/ --with-mmseg-libs=/usr/local/mmseg3/lib/ --with-mysql --host=arm


vi src/sphinxexpr.cpp


然后将所有的T val = ExprEval ( this->m_pArg, tMatch ).....修改为


T val = this->ExprEval ( this->m_pArg, tMatch )


make

make install

cd /usr/local/coreseek/etc



进入配置目录通过命令ls可以看到3个文件

example.sql  sphinx.conf.dist  sphinx-min.conf.dist

其中example.sql是示例sql脚本我们将其导入到数据库中的test数据库中作为测试数据(会创建两张表 documents和tags)

=============================================================================

vi sphinx.conf

输入以下内容

source src1

{

type = mysql

sql_host = localhost

sql_user = root

sql_pass = 12345678

sql_db = test

sql_port = 3306 # optional, default is 3306

sql_sock                                = /tmp/mysql.sock

sql_query_pre = SET NAMES utf8

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 = /usr/local/coreseek/var/data/test1

docinfo = extern

charset_type = zh_cn.utf-8

mlock = 0

morphology = none

min_word_len = 1

html_strip = 0

charset_dictpath = /usr/local/mmseg3/etc/

ngram_len                    = 0

}

indexer

{

mem_limit = 32M

}



searchd

{

port = 9312

log = /usr/local/coreseek/var/log/searchd.log

query_log = /usr/local/coreseek/var/log/query.log

read_timeout = 5

max_children = 30

pid_file = /usr/local/coreseek/var/log/searchd.pid

max_matches = 1000

seamless_rotate = 1

preopen_indexes = 0

unlink_old = 1

}


说明:

代码段source src1{***} 代表数据源里面主要包含了数据库的配置信息,src1表示数据源名字,可以随便写。

代码段index test1{***} 代表为哪个数据源创建索引,与source *** 是成对出现的,其中的source参数的值必须是某一个数据源的名字。

其他参数可以查看手册,这里不再赘述。

生成索引

/usr/local/coreseek/bin/indexer -c /usr/local/coreseek/etc/sphinx.conf --all

启动命令

/usr/local/coreseek/bin/searchd -c /usr/local/coreseek/etc/sphinx.conf

其中参数--all表示生成所有索引

当然也可以是索引的名字例如:。

执行后可以在/usr/local/coreseek/var/data目录中看到多出一些文件,是以索引名为文件名的不同的扩展名的文件

在不启动sphinx的情况下即可测试命令:

  /usr/local/coreseek/bin/search -c /usr/local/coreseek/etc/sphinx.conf 广东


windows下创建sphinx

1、进入coreseek文件夹下

2、创建索引   .\bin\indexer.exe -c .\etc\配置文件名字 --all

3、开启索引   .\bin\searchd.exe -c .\etc\配置文件

4、如果用docs操作进行搜索  :  .\bin\search.exe -c .\etc\配置文件名字  搜索关键值