在Linux下安装最新版本的Solr5.3.1并配置IK中文分词

在Linux下安装最新版本的Solr5.3.1并配置IK中文分词

 一、首先安装Solr5.3.1
从5.0开始,Solr不再需要单独的发布为任何Servlet容器打包的WAR包,Solr运行在自己的Servlet的容器里。
1、首先需要JDK版本最低为1.7,请使用
     #java --version
     注意,linux默认自带的Open JDK可能不被支持,所以请尽量使用官方版本的JDK
2、 获取Solr5.3.1的安装包
     #wget http://mirror.bit.edu.cn/apache/lucene/solr/5.3.1/solr-5.3.1.tgz
     #tar zxvf solr-5.3.1.taz
3、创建应用程序和数据目录
     #mkdir -p /data/solr /usr/local/solr
4、创建运行solr的用户并赋权
     #groupadd solr
     #useradd -g solr solr
     #chown -R solr.solr /data/solr /usr/local/solr
5、安装solr服务为自启动
     #solr-5.3.1/bin/install_solr_service.sh solr-5.3.1.tgz -d /data/solr -i /usr/local/solr
6、安装完成后,命令行输出为:
     Solr process 29692 running on port 8983    

  {    

  "solr_home":"/data/solr/data/",    

  "version":"5.3.0 1696229 - noble - 2015-08-17 17:10:43",    

  "startTime":"2015-09-16T01:32:03.919Z",    

  "uptime":"0 days, 0 hours, 3 minutes, 6 seconds",    

  "memory":"89.8 MB (%18.3) of 490.7 MB"
  }

7、此时Solr已经运行在了8983端口,输入http://xxxxxxx:8983即可得到Solr Admin界面,注意此时Core Admin下的Add Core添加新Core会报错,必须手工先手工添加,添加方式为:
      # su solr -c "/usr/local/solr/solr/bin/solr create -c gettingstarted -n data_driven_schema_configs"
     其中的 gettingstarted 即为新添加的Solr Core,data_driven_schema_configs是初始化Core的配置文件,可是尝试先手工post一个文档进去:

     图片
Post的数据作为一个Doc进行索引,格式为JSON格式,里面的数据项可以任意定义,不得不说相比4版本的手工定义数据集是一个巨大的进步。现在Solr5.3.1已经完整的安装完毕,但对于想用Solr提供中文全文检索服务而言,工作却还没做完,还需要添加中文的分词配置,否则中文的检索就如下图所示,无法正确的分词

图片
 

二、添加IK Analyzer中文分词器

1、 从https://github.com/EugenePig/ik-analyzer-solr5下载最新修改的IK Analyzer的源代码包
2、使用Eclipse打开源码包进行编译,注意本地的JDK版本必须为1.7以上
3、修改pom文件里的java版本为本地实际版本后,maven build生成jar包
 图片
4、将ik-analyzer-solr5-5.x.jar拷贝到服务器上Solr目录下的/usr/local/solr/solr-5.3.1/server/solr-webapp/webapp/WEB-INF/lib下

5、 进入配置目录
  #cd /data/solr/data/main_collection/conf
  #vim managed-schema
  添加如下内容
   <!--增加中文分词-->

    <fieldType name="text_ik" class="solr.TextField">

      <analyzer type="index" useSmart="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/>

      <analyzer type="query" useSmart="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/>

    </fieldType>
  保存退出!
6、重启solr
  #service solr restart 
7、检查分词效果,在Analysis里,首先选择FieldType为text_ik,检查我们的中文分词效果
图片
  
 8、OK,至此大功告成,源作者的扩充词典并不够用,建议自己打包一些词典进去,否则分词效果不理想。

 

猜你喜欢

转载自blog.csdn.net/blackhost/article/details/84645506