支持中文的全文檢索 ---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 還有不少問題。最終的解決辦法 是經過了互聯網一些大手們的分享。謝謝他們!