Ubuntu mysql使用SphinxSE方式调用Sphinx与中文分词的应用

redfler 2010-02-22

对大家推荐很好使用的Ubuntu mysql系统,像让大家对Ubuntu mysql系统有所了解,然后对Ubuntu mysql系统全面讲解介绍,希望对大家有用

1、在Ubuntu mysql中的使用SphinxSE方式调用Sphinx

首先建立一张索引专用表:

CREATETABLE`sphinx`(  


`id`int(11)NOTNULL,  


`weight`int(11)NOTNULL,  


`query`varchar(255)NOTNULL,  


`CATALOGID`INTNOTNULL,  


`EDITUSERID`INTNOTNULL,  


`HITS`INTNULL,  


`ADDTIME`INTNOTNULL,KEY  


`Query`(`Query`)  



)ENGINE=SPHINXDEFAULTCHARSET=utf8CONNECTION='sphinx://localhost:3312/test1' 

test1:索引的名称,可以在sphinx.conf中查找到建立完索引专用表后,我们就可以在Ubuntu mysql中使用它了,例如,在Ubuntu mysql中输入

SELECTdoc.*FROMdocumentsdocJOINsphinxON(doc.id=sphinx.id)  



WHEREquery='doc;mode=any' 

运行后,结果记录中将会显示包含doc字符串的所用记录行关于query的语法,还有sphinx的配置等信息你可以请参考:http://www.sphinxsearch.com/doc.html这里有十分详细的介绍,在这里我们只做一个简单的介绍,希望能起到抛砖引玉的效果。

2、Ubuntu mysql中文分词的应用

在应用之前我们先将apache2和phpmyadmin装上,以便输入中文进行测试

apt-getinstallapache2  


apt-getinstallphpmyadmin 

访问:http://192.168.2.249/phpmyadmin/出现了熟悉的界面,ok,安装成功.

接着我们需要修改/etc/php5/apache2/php.ini中的mysql.default_socket值设置成/tmp/mysql.sock这样我们就可以在http://192.168.2.249/phpmyadmin/上通过root用户(密码空)访问Ubuntu mysql了

生成和使用分词字典mmseg-u/root/mmseg-0.7.3/data/unigram.txt将生成unigram.txt.lib文件将文件拷贝到/usr/local/sphinx/下面,命名为uni.libcpunigram.txt.lib/usr/local/sphinx/uni.lib修改sphinx.conf(/usr/local/sphinx/etc/sphinx.conf)配置文件在索引中加入

charset_type=zh_cn.utf-8  



charset_dictpath=/usr/local/sphinx/ 

配置然后通过/usr/local/sphinx/bin/indexer--config/usr/local/sphinx/etc/sphinx.confCall(如果searchd已经再运行,先kill它再运行,下一部分,我们会介绍怎样在searchd运行的状态下,加载索引)重建索引,成功后,开启索引监听/usr/local/sphinx/bin/searchd--config/usr/local/sphinx/etc/sphinx.conf这样,就可以在phpmyadmin中进行测试了。

相关推荐