WINDOWS 下SPHINX安装,以及javaAPI调(1)

官方在线文档:http://www.coreseek.cn/products-install/install_on_windows/

一、安装:
##
## 1.  安装Python 2.6 Windows (x86)(必须,32位系统和64位系统均安装该版本):


##从ActiveState官方网站下载ActivePython 2.6 Windows (x86)

,然后安装;
##您也可从华军软件园下载ActivePython 2.6 Windows (x86)

,然后安装;
##
## 2. 安装 Microsoft Visual C++ 2005 Redistributable Package (x86)(必须,32位系统和64位系统均安装该版本):


##从微软官方网站下载Microsoft Visual C++ 2005 Redistributable Package (x86)

,然后安装;
##
## 3. 安装 Coreseek-3.2.13(必须):


##从Coreseek官方网站下载 http://www.coreseek.cn/uploads/csft/3.2/coreseek-3.2.13-win32.zip


#解压coreseek-3.2.13-win32.zip到coreseek-3.2.13-win32目录

##二、数据源支持:
##win32版本默认支持xml、mysql、python等数据源

##三、coreseek中文全文检索测试
##可直接执行test.cmd测试,或者:
##打开win32命令行
#cd coreseek-3.2.13-win32
#bin\indexer -c etc\csft.conf
##以下为正常情况下的提示信息:
    Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release (r2117)]
    Copyright (c) 2007-2010,
    Beijing Choice Software Technologies Inc (http://www.coreseek.com)

     using config file 'etc\csft.conf'...
    total 0 reads, 0.000 sec, 0.0 kb/call avg, 0.0 msec/call avg
    total 0 writes, 0.000 sec, 0.0 kb/call avg, 0.0 msec/call avg

#bin\indexer -c etc\csft.conf --all
##以下为正常索引全部数据时的提示信息:
    Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release (r2117)]
    Copyright (c) 2007-2010,
    Beijing Choice Software Technologies Inc (http://www.coreseek.com)

     using config file 'etc\csft.conf'...
    indexing index 'xml'...
    collected 3 docs, 0.0 MB
    sorted 0.0 Mhits, 100.0% done
    total 3 docs, 7585 bytes
    total 0.075 sec, 101043 bytes/sec, 39.96 docs/sec
    total 2 reads, 0.000 sec, 5.6 kb/call avg, 0.0 msec/call avg
    total 7 writes, 0.000 sec, 3.9 kb/call avg, 0.0 msec/call avg

#bin\indexer -c etc\csft.conf xml
##以下为正常索引指定数据时的提示信息:
    Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release (r2117)]
    Copyright (c) 2007-2010,
    Beijing Choice Software Technologies Inc (http://www.coreseek.com)

     using config file 'etc\csft.conf'...
    indexing index 'xml'...
    collected 3 docs, 0.0 MB
    sorted 0.0 Mhits, 100.0% done
    total 3 docs, 7585 bytes
    total 0.069 sec, 109614 bytes/sec, 43.35 docs/sec
    total 2 reads, 0.000 sec, 5.6 kb/call avg, 0.0 msec/call avg
    total 7 writes, 0.000 sec, 3.9 kb/call avg, 0.0 msec/call avg

# bin\search -c etc\csft.conf
##以下为正常测试搜索时的提示信息:
    Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release (r2117)]
    Copyright (c) 2007-2010,
    Beijing Choice Software Technologies Inc (http://www.coreseek.com)

     using config file 'etc\csft.conf'...
    index 'xml': query '': returned 3 matches of 3 total in 0.093 sec

    displaying matches:
    1. document=1, weight=1, published=Thu Apr  1 22:20:07 2010, author_id=1
    2. document=2, weight=1, published=Thu Apr  1 23:25:48 2010, author_id=1
    3. document=3, weight=1, published=Thu Apr  1 12:01:00 2010, author_id=2

    words:

##因为Win32命令行不支持UTF-8输入,故以下指令无法测试:
# bin\search -c etc\csft.conf -a Twittter和Opera都提供了搜索服务
##故请使用bin\search -c etc\csft.conf -a Twittter Opera
##以下为正常测试搜索关键词时的提示信息:
    Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release (r2117)]
    Copyright (c) 2007-2010,
    Beijing Choice Software Technologies Inc (http://www.coreseek.com)

     using config file 'etc\csft.conf'...
    index 'xml': query 'Twittter和Opera都提供了搜索服务 ': returned 3 matches of 3 total in 0.038 sec

    displaying matches:
    1. document=3, weight=24, published=Thu Apr  1 12:01:00 2010, author_id=2
    2. document=1, weight=4, published=Thu Apr  1 22:20:07 2010, author_id=1
    3. document=2, weight=3, published=Thu Apr  1 23:25:48 2010, author_id=1

    words:
    1. 'twittter': 1 documents, 3 hits
    2. '和': 3 documents, 15 hits
    3. 'opera': 1 documents, 25 hits
    4. '都': 2 documents, 4 hits
    5. '提供': 0 documents, 0 hits
    6. '了': 3 documents, 18 hits
    7. '搜索': 2 documents, 5 hits
    8. '服务': 1 documents, 1 hits

# bin\searchd -c etc\csft.conf
##以下为正常开启搜索服务时的提示信息:
    Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release (r2117)]
    Copyright (c) 2007-2010,
    Beijing Choice Software Technologies Inc (http://www.coreseek.com)

    using config file 'etc\csft.conf'...
    listening on all interfaces, port=9312
##如要停止搜索服务,请使用ctrl+C停止

##然后,请参考csft-3.2.13-win32下api目录中的相关文件,使用PHP、Python、Ruby、Java来测试搜索服务;也可以前往< ahref="/products-install/step_by_step/">搜索服务建立三步曲,查看第三步使用PHP测试。

##四、继续
##通过以上步骤,coreseek已经安装测试完成,可以提供正常的xml数据源索引以及提供对应的搜索服务了
##下一步工作,请查看手册,准备好mysql数据信息,以及进行mysql数据源的测试,并在您的应用中调用搜索服务;mysql数据源的配置可参考testpack/etc/csft_mysql.conf文件

 

按照上面的步骤安装通过后,就证明你可使用了SPHINX进行搜索了,

 

晒一下我的csft.conf 文件内容,以及相关的一些说明,

#源定义
source src1
{
	type					= mysql			#数据源类型
	sql_host				= 192.168.93.173	#主机
	sql_user				= t_develop		#用户
	sql_pass				= t_develop		#密码
	sql_db					= twioo_develop		#数据库
	sql_port				= 3306			#数据库端口
	sql_query_pre				= SET NAMES UTF8	#检索编码
	
						#获取数据的SQL语句
	sql_query				= SELECT content_id,user_id, user_type as user_type , post_time as  posttime ,content_body FROM twioo_content 
		
	sql_attr_uint				=posttime		#无符号整数属性
	sql_attr_uint				=user_type		#无符号整数属性
	#sql_attr_timestamp			= created ############ UNIX时间戳属性
	sql_ranged_throttle			= 0
}


index content
{
	source			= src1				#声明索引源
	path			= D:\sphinx/data/content	#索引存储路径及文件名
	docinfo			= extern			#存储方式
	mlock			= 0				#
	morphology		= none				#形态学(对中文无效)
	min_word_len		= 1				#索引的最小长度
	html_strip		= 0				#
	#charset_dictpath = /usr/local/coreseek/
	#charset_type=zh_cn.utf-8			
	charset_type  = utf-8					#数据编码	

	ngram_len = 1						# 对于非字母型数据的长度切割
	min_prefix_len  = 0					#最小前缀					
	min_infix_len  = 1					#最小中缀


	
	#stopwords   =D:\sphinx/stopwords.txt

	ngram_chars =	U+4E00..U+9FBB, U+3400..U+4DB5, U+20000..U+2A6D6, U+FA0E, U+FA0F, \
			U+FA11, U+FA13, U+FA14, U+FA1F, U+FA21, U+FA23, U+FA24, U+FA27, U+FA28, U+FA29, \
			U+3105..U+312C, U+31A0..U+31B7, U+3041, U+3043, U+3045, U+3047, U+3049, U+304B, \
			U+304D, U+304F, U+3051, U+3053, U+3055, U+3057, U+3059, U+305B, U+305D, U+305F, \
			U+3061, U+3063, U+3066, U+3068, U+306A..U+306F, U+3072, U+3075, U+3078, U+307B, \
			U+307E..U+3083, U+3085, U+3087, U+3089..U+308E, U+3090..U+3093, U+30A1, U+30A3, \
			U+30A5, U+30A7, U+30A9, U+30AD, U+30AF, U+30B3, U+30B5, U+30BB, U+30BD, U+30BF, \
			U+30C1, U+30C3, U+30C4, U+30C6, U+30CA, U+30CB, U+30CD, U+30CE, U+30DE, U+30DF, \
			U+30E1, U+30E2, U+30E3, U+30E5, U+30E7, U+30EE, U+30F0..U+30F3, U+30F5, U+30F6, \
			U+31F0, U+31F1, U+31F2, U+31F3, U+31F4, U+31F5, U+31F6, U+31F7, U+31F8, U+31F9, \
			U+31FA, U+31FB, U+31FC, U+31FD, U+31FE, U+31FF, U+AC00..U+D7A3, U+1100..U+1159, \
			U+1161..U+11A2, U+11A8..U+11F9, U+A000..U+A48C, U+A492..U+A4C6

	charset_table = U+FF10..U+FF19->0..9, 0..9, U+FF41..U+FF5A->a..z, U+FF21..U+FF3A->a..z,\
						A..Z->a..z, a..z, U+0149, U+017F, U+0138, U+00DF, U+00FF, U+00C0..U+00D6->U+00E0..U+00F6,\
						U+00E0..U+00F6, U+00D8..U+00DE->U+00F8..U+00FE, U+00F8..U+00FE, U+0100->U+0101, U+0101,\
						U+0102->U+0103, U+0103, U+0104->U+0105, U+0105, U+0106->U+0107, U+0107, U+0108->U+0109,\
						U+0109, U+010A->U+010B, U+010B, U+010C->U+010D, U+010D, U+010E->U+010F, U+010F,\
						U+0110->U+0111, U+0111, U+0112->U+0113, U+0113, U+0114->U+0115, U+0115, \
						U+0116->U+0117,U+0117, U+0118->U+0119, U+0119, U+011A->U+011B, U+011B, U+011C->U+011D,\
						U+011D,U+011E->U+011F, U+011F, U+0130->U+0131, U+0131, U+0132->U+0133, U+0133, \
						U+0134->U+0135,U+0135, U+0136->U+0137, U+0137, U+0139->U+013A, U+013A, U+013B->U+013C, \
						U+013C,U+013D->U+013E, U+013E, U+013F->U+0140, U+0140, U+0141->U+0142, U+0142, \
						U+0143->U+0144,U+0144, U+0145->U+0146, U+0146, U+0147->U+0148, U+0148, U+014A->U+014B, \
						U+014B,U+014C->U+014D, U+014D, U+014E->U+014F, U+014F, U+0150->U+0151, U+0151, \
						U+0152->U+0153,U+0153, U+0154->U+0155, U+0155, U+0156->U+0157, U+0157, U+0158->U+0159,\
						U+0159,U+015A->U+015B, U+015B, U+015C->U+015D, U+015D, U+015E->U+015F, U+015F, \
						U+0160->U+0161,U+0161, U+0162->U+0163, U+0163, U+0164->U+0165, U+0165, U+0166->U+0167, \
						U+0167,U+0168->U+0169, U+0169, U+016A->U+016B, U+016B, U+016C->U+016D, U+016D, \
						U+016E->U+016F,U+016F, U+0170->U+0171, U+0171, U+0172->U+0173, U+0173, U+0174->U+0175,\
						U+0175,U+0176->U+0177, U+0177, U+0178->U+00FF, U+00FF, U+0179->U+017A, U+017A, \
						U+017B->U+017C,U+017C, U+017D->U+017E, U+017E, U+0410..U+042F->U+0430..U+044F, \
						U+0430..U+044F,U+05D0..U+05EA, U+0531..U+0556->U+0561..U+0586, U+0561..U+0587, \
						U+0621..U+063A, U+01B9,U+01BF, U+0640..U+064A, U+0660..U+0669, U+066E, U+066F, \
						U+0671..U+06D3, U+06F0..U+06FF,U+0904..U+0939, U+0958..U+095F, U+0960..U+0963, \
						U+0966..U+096F, U+097B..U+097F,U+0985..U+09B9, U+09CE, U+09DC..U+09E3, U+09E6..U+09EF, \
						U+0A05..U+0A39, U+0A59..U+0A5E,U+0A66..U+0A6F, U+0A85..U+0AB9, U+0AE0..U+0AE3, \
						U+0AE6..U+0AEF, U+0B05..U+0B39,U+0B5C..U+0B61, U+0B66..U+0B6F, U+0B71, U+0B85..U+0BB9, \
						U+0BE6..U+0BF2, U+0C05..U+0C39,U+0C66..U+0C6F, U+0C85..U+0CB9, U+0CDE..U+0CE3, \
						U+0CE6..U+0CEF, U+0D05..U+0D39, U+0D60,U+0D61, U+0D66..U+0D6F, U+0D85..U+0DC6, \
						U+1900..U+1938, U+1946..U+194F, U+A800..U+A805,U+A807..U+A822, U+0386->U+03B1, \
						U+03AC->U+03B1, U+0388->U+03B5, U+03AD->U+03B5,U+0389->U+03B7, U+03AE->U+03B7, \
						U+038A->U+03B9, U+0390->U+03B9, U+03AA->U+03B9,U+03AF->U+03B9, U+03CA->U+03B9, \
						U+038C->U+03BF, U+03CC->U+03BF, U+038E->U+03C5,U+03AB->U+03C5, U+03B0->U+03C5, \
						U+03CB->U+03C5, U+03CD->U+03C5, U+038F->U+03C9,U+03CE->U+03C9, U+03C2->U+03C3, \
						U+0391..U+03A1->U+03B1..U+03C1,U+03A3..U+03A9->U+03C3..U+03C9, U+03B1..U+03C1, \
						U+03C3..U+03C9, U+0E01..U+0E2E,U+0E30..U+0E3A, U+0E40..U+0E45, U+0E47, U+0E50..U+0E59, \
						U+A000..U+A48F, U+4E00..U+9FBF,U+3400..U+4DBF, U+20000..U+2A6DF, U+F900..U+FAFF, \
						U+2F800..U+2FA1F, U+2E80..U+2EFF,U+2F00..U+2FDF, U+3100..U+312F, U+31A0..U+31BF, \
						U+3040..U+309F, U+30A0..U+30FF,U+31F0..U+31FF, U+AC00..U+D7AF, U+1100..U+11FF, \
						U+3130..U+318F, U+A000..U+A48F,U+A490..U+A4CF 
}

######### 索引器配置 ##### 
indexer
{
	mem_limit			= 128M			####### 内存限制
}



#searchd服务定义
searchd
{
	listen				= 192.168.93.147:3312	### 监听端口
	read_timeout			= 5			#请求超时时间
	max_children			= 30			#同时可执行的最大searchd 进程数
	max_matches			= 100000		### 查询结果的最大返回数	
	seamless_rotate			= 0			### 是否支持无缝切换,做增量索引时通常需要		
	preopen_indexes			= 0	
	unlink_old			= 1
	pid_file			= D:\sphinx\log/searchd.pid	#######进程ID文件 
	log				=D:\sphinx\log/searchd.log	#### 服务进程日志 ,一旦sphinx出现异常,基本上可以从这里查询有效信息
	query_log			=D:\sphinx\log/query.log	### 客户端查询日志
}

 

  说明一下,D:\sphinx\log这样的文件夹要先建立,否则会报错的,sql_attr_uint 是一些属性,为了能进行排序,分组,过滤用的

 

上面的文件搞好后,我们开始测试:(命令行进入coreseek-3.2.13-win32目录)

1,生成索引,

        bin\indexer -c etc\csft.conf --all

 

E:\doc\Sphinx\tool\coreseek-3.2.13-win32>bin\indexer -c etc\csft.conf --all
Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release (r2117)]
Copyright (c) 2007-2010,
Beijing Choice Software Technologies Inc (http://www.coreseek.com)

 using config file 'etc\csft.conf'...
indexing index 'content'...
collected 184330 docs, 15.1 MB
sorted 30.5 Mhits, 97.9% done
total 184330 docs, 15080875 bytes
total 39.237 sec, 384347 bytes/sec, 4697.78 docs/sec
total 7 reads, 6.279 sec, 26307.1 kb/call avg, 897.0 msec/call avg

 

2.检索
        bin\search.exe -c etc\csft.conf -a ss

E:\doc\Sphinx\tool\coreseek-3.2.13-win32> bin\search.exe -c etc\csft.conf -a ss
Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release (r2117)]
Copyright (c) 2007-2010,
Beijing Choice Software Technologies Inc (http://www.coreseek.com)

 using config file 'etc\csft.conf'...
index 'content': query 'ss ': returned 606 matches of 606 total in 0.039 sec

displaying matches:
1. document=987847, weight=1, user_type=0, posttime=1269336727
2. document=987854, weight=1, user_type=0, posttime=1269395853
3. document=987855, weight=1, user_type=0, posttime=1269395859
4. document=987859, weight=1, user_type=0, posttime=1269395944
5. document=987860, weight=1, user_type=0, posttime=1269395953
6. document=987871, weight=1, user_type=0, posttime=1269409377
7. document=987971, weight=1, user_type=3, posttime=10
8. document=987991, weight=1, user_type=0, posttime=1269411526
9. document=988302, weight=1, user_type=3, posttime=1261593198
10. document=988467, weight=1, user_type=3, posttime=10
11. document=988484, weight=1, user_type=3, posttime=1261596869
12. document=988509, weight=1, user_type=3, posttime=1261597677
13. document=988516, weight=1, user_type=3, posttime=10
14. document=988539, weight=1, user_type=3, posttime=1261598582
15. document=988566, weight=1, user_type=3, posttime=1261599229
16. document=988826, weight=1, user_type=3, posttime=1261608630
17. document=988923, weight=1, user_type=3, posttime=1261611892
18. document=988992, weight=1, user_type=3, posttime=1261613865
19. document=989033, weight=1, user_type=3, posttime=1261614681
20. document=989213, weight=1, user_type=3, posttime=1261618195

words:
1. 'ss': 606 documents, 611 hits

 

这里不能写中文,CMD默认不支持UTF-8,这样就可以查到查有ss的记录了,

3,开户服务

        bin\searchd.exe -c etc\csft.conf

服务开启后,就可以在客户端调用,进行查询了,在控制台会看到这样的结果:

E:\doc\Sphinx\tool\coreseek-3.2.13-win32>bin\searchd.exe -c etc\csft.conf
Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release (r2117)]
Copyright (c) 2007-2010,
Beijing Choice Software Technologies Inc (http://www.coreseek.com)

 WARNING: forcing --console mode on Windows
using config file 'etc\csft.conf'...
listening on 192.168.93.147:3312
accepting connections
[Fri Aug 20 15:36:01.748 2010] 0.183 sec [ext/0/attr- 27 (0,50)] [*] 恒生电子

 

补充一下,正常情况下,在命令行中是不到UTF-8文字,要想在CMD命令行中看到得结果,在命令行中称输入CHCP 65001 设置一下CMD窗口属性,字体--选择lucida console 然后保存这样就可以看到搜索结果的文字了,不然是乱码

如果想变会中文,重新设置 chcp 936

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值