Ubuntumysql如何使用SphinxSE方式调用Sphinx与中文分词的应用

小编给大家分享一下Ubuntu MySQL如何使用SphinxSE方式调用Sphinx与中文分词的应用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

成都地区优秀IDC服务器托管提供商(创新互联建站).为客户提供专业的服务器托管,四川各地服务器托管,服务器托管、多线服务器托管.托管咨询专线:028-86922220

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.conf–all(如果searchd已经再运行,先kill它再运行,下一部分,我们会介绍怎样在searchd运行的状态下,加载索引)重建索引,成功后,开启索引监听/usr/local/sphinx/bin/searchd--config/usr/local/sphinx/etc/sphinx.conf这样,就可以在phpmyadmin中进行测试了。

SELECTdoc.*FROMdocumentsdocJOINsphinxON(doc.id=sphinx.id)  WHEREquery='张学友;mode=any'

看完了这篇文章,相信你对“Ubuntu mysql如何使用SphinxSE方式调用Sphinx与中文分词的应用”有了一定的了解,如果想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


当前名称:Ubuntumysql如何使用SphinxSE方式调用Sphinx与中文分词的应用
分享URL:http://pwwzsj.com/article/piijjd.html