支持中文的全文检索 ---test 版mysql
1,去http://www.coreseek.cn/products-install/install_on_bsd_linux/ 下载coreseek,按照官方提供的安装步骤来安装!安装完成 建议测试一下。linux
二、安装thinking-sphinx gem 包,建议使用淘宝提供的源来安装,比较快。http://ruby.taobao.org/ sql
三、新建一个项目。而后连接mysql数据库 在你的项目下面的Rakefile文件下面加入 require 'thinking_sphinx/tasks'数据库
四、模型的写法案例:class Pp < ActiveRecord::Base
define_index do
indexes name, :sortable => true
end
endruby
五、而后在config 的目录下面新建一个sphinx.yml 里面的内容为:测试
development:
charset_type: zh_cn.utf-8
bin_path: /usr/local/coreseek/bin
charset_dictpath: /usr/local/mmseg3/etc
ngram_len: 0ui
六、而后用终端进入你的项目下面:rake ts:conf 索引
七、这样会生成sphinx 须要的配置文件,而后生成索引;rake ts:indexip
八、在启动sphinx 服务:rake ts:startutf-8
九、这样你就能够测试了,如下是个人测试结果:
qinjker@qinjker-laptop:~/projects/sphinx$ ruby script/console
Loading development environment (Rails 2.3.11)
ruby-1.8.7-p334 :001 > Pp.search ''
=> [#<Pp id: 18, name: "不是东西">]
ruby-1.8.7-p334 :002 > Pp.search '不'
=> [#<Pp id: 18, name: "不是东西">]
ruby-1.8.7-p334 :003 > Pp.search '是'
=> [#<Pp id: 18, name: "不是东西">]
在这期间我遇到的问题总结:首先我安装了不支持中文的sphinx,虽然搜索成功了,可是不支持中文的。后来我就安装了coreseek,遇到了unknown key name 'sql_attr_string'这个问题。解决的办法就是我把 以前装的sphinx卸载。sudo make uninstall 还有不少问题。最终的解决办法 是经过了互联网一些大手们的分享。谢谢他们!