windows下全文检索引擎sphinx/coreseek的安装配置
安装教程使用的coreseek4.1,下载地址:http://download.csdn.net/detail/wangshaner1/6202993
这个是我的coreseek.conf 配置文件。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | #源定义 source mysql{ type = mysql sql_host = 192.168.0.200 sql_user = root sql_pass = sql_db = tpshop_bbc sql_port = 3306 sql_query_pre = SET NAMES utf8 sql_query = select goods_id, cat_id1, on_time, goods_name, goods_remark FROM tp_goods #sql_query第一列id需为整数 #title、content作为字符串/文本字段,被全文索引 sql_attr_uint = cat_id1 #从SQL读取到的值必须为整数 sql_attr_uint = sql_attr_uint = sql_attr_timestamp = on_time #从SQL读取到的值必须为整数,作为时间属性 sql_query_info_pre = SET NAMES utf8 #命令行查询时,设置正确的字符集 sql_query_info = select * FROM goods WHERE goods_id=$id #命令行查询时,从数据库读取原始数据信息 } #index定义 index mysql { source = mysql #对应的source名称 path = D:/www/coreseek/var/data/mysql #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/... docinfo = extern mlock = 0 morphology = none min_word_len = 1 html_strip = 0 #中文分词配置,详情请查看:http://www.coreseek.cn/products-install/coreseek_mmseg/ #charset_dictpath = /usr/local/mmseg3/etc/ #BSD、Linux环境下设置,/符号结尾 charset_dictpath = D:/www/coreseek/etc/ #Windows环境下设置,/符号结尾,最好给出绝对路径,例如:C:/usr/local/coreseek/etc/... charset_type = zh_cn.utf-8 } #全局index定义 indexer { mem_limit = 128M } #searchd服务定义 searchd { listen = 9312 read_timeout = 5 max_children = 30 max_matches = 1000 seamless_rotate = 0 preopen_indexes = 0 unlink_old = 1 pid_file = D:/www/coreseek/var/log/searchd_mysql.pid #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/... log = D:/www/coreseek/var/log/searchd_mysql.log #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/... query_log = D:/www/coreseek/var/log/query_mysql.log #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/... binlog_path = #关闭binlog日志 } |
| |
配置完成安装下面操作即可:
1.点击开始按钮输入cmd ,右键cmd.exe 以管理员身份运行,cd到解压出来的coreseek文件下
2.建立索引
bin\indexer -c etc\csft_mysql.conf --all (第一次建立索引)
bin\indexer -c etc\csft_mysql.conf --all --rotare (重新建立索引)
3.查询
bin\search -c etc\csft_mysql.conf xxxx
xxxx就是你要查询的内容,dos下最好只查询英文内容,因为dos下由于编码原因,不一定能查询出来。
dos下的查询主要是起到测试的作用,真正的查询应该还是要通过调用API
4.searchd 安装成为一个服务(之后可以关闭dos窗口使用)
bin\searchd --install --config d:/www/coreseek/etc/csft_mysql.conf
操作完成后打开搜索页面测试就可以了
5.示例代码 位于coreseek/api/test/coreseek.php