1.依赖:

JDK1.6,Tomcat 5.5,Solr 4.0.0,IKAnalyzer 2012FF

Tomcat虽然不是必须,但觉得上生产环境的话,还是得用Tomcat,便于统一管理和监控.

Tomcat等你也可以用其他版本

2.下载:

#Tomcat:

wget http://archive.apache.org/dist/tomcat/tomcat-5/v5.5.35/bin/apache-tomcat-5.5.35.tar.gz

#Solr

wget Solr:  http://mirrors.tuna.tsinghua.edu.cn/apache/lucene/solr/4.0.0/apache-solr-4.0.0.tgz

#IKAnalyzer

wget http://ik-analyzer.googlecode.com/files/IK%20Analyzer%202012FF_hf1.zip

3.安装步骤:

1)JDK安装

JDK安装省略,你只要安装完成在环境中设置JAVA_HOME即可,比如我这边是JAVA_HOME=/usr/java/default

2) TOMCAT安装

TOMCAT安装省略,你只要安装完车功能在环境中设置CATALINA_HOME即可,比如我这边是CATALINA_HOME=/opt/tomcat/current

3) 安装solr

a.安装solr webapp

解压solr后得到apache-solr-4.0.0,进入apache-solr-4.0.0/dist/,可以看到apache-solr-4.0.0.war.该文件其实是个zip文件,用命令

unzip apache-solr-4.0.0.war将其解压,获得apache-solr-4.0.0,将其重命名为solr,放到tomcat目录下的webapps目录下,比如我这边是

/opt/tomcat/current/webapps/

b.安装中文分词IKanalyzer

解压IK Analyzer 2012FF_hf1.zip,获得IK Analyzer 2012FF_hf1.将该目录下的IKAnalyzer.cfg.xml,IKAnalyzer2012FF_u1.jar,stopword.dic

放到之前安装TOMCAT_HOME/webapps/solr/WEB-INF/lib/目录下,比如我这里是/opt/tomcat/current/webapps/solr/WEB-INF/lib/

4) 安装solr-work,也就是solr配置和索引目录

a.告知solr它的工作目录在哪里

一般有两种方式,设置环境变量以及jndi。但我建议采用jndi,还是那个原因,便于维护.

在$TOMCAT_HOME/conf/Catalina/localhost里新建solr.xml文件,内容如下:

  1. <Context docBase="/usr/local/tomcat/webapps/solr.war" debug="0" crossContext="true" >
  2. <Environment name="solr/home" type="java.lang.String" value="/opt/solr/work/solr" override="true" />
  3. </Context>

其中里面的/opt/solr/work/solr就是所谓的solr工作目录.solr配置,以及索引都将存放到该目录.

b.配置solr

简单的话将刚解压后的apache-solr-4.0.0/example/solr下的所有文件复制到/opt/solr/work/solr目录下

c.设置IKAnalyzer中文分词

修改/opt/solr/work/solr/collection1/conf/中的schema.xml,在<type></types>中增加如下内容:

++

  1. <fieldType name="text_ik" class="solr.TextField">
  2. <analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
  3. <analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
  4. </fieldType>

其中查询采用IK自己的最大分词法,索引则采用它的细粒度分词法.所以各自配置了isMaxWordLength属性.

4.启动/停止solr

只要启动/停止Tomcat即可

Solr4.0+IKAnalyzer中文分词安装的更多相关文章

  1. Solr4.0+IKAnalyzer中文分词安装(转)

    有近2年没接触Solr跟Lucene了,这2年自己跟solr/lucene都发生了很多变化.不过有种疏途同归的感觉,那就是都向分布式/云和监控靠了.2年前接触了solrcloud,那时大概玩了一周.那 ...

  2. 2.IKAnalyzer 中文分词器配置和使用

    一.配置 IKAnalyzer 中文分词器配置,简单,超简单. IKAnalyzer 中文分词器下载,注意版本问题,貌似出现向下不兼容的问题,solr的客户端界面Logging会提示错误. 给出我配置 ...

  3. solr服务中集成IKAnalyzer中文分词器、集成dataimportHandler插件

    昨天已经在Tomcat容器中成功的部署了solr全文检索引擎系统的服务:今天来分享一下solr服务在海量数据的网站中是如何实现数据的检索. 在solr服务中集成IKAnalyzer中文分词器的步骤: ...

  4. 转:solr6.0配置中文分词器IK Analyzer

    solr6.0中进行中文分词器IK Analyzer的配置和solr低版本中最大不同点在于IK Analyzer中jar包的引用.一般的IK分词jar包都是不能用的,因为IK分词中传统的jar不支持s ...

  5. 我与solr(六)--solr6.0配置中文分词器IK Analyzer

    转自:http://blog.csdn.net/linzhiqiang0316/article/details/51554217,表示感谢. 由于前面没有设置分词器,以至于查询的结果出入比较大,并且无 ...

  6. Lucene学习——IKAnalyzer中文分词

    一.环境 1.平台:MyEclipse8.5/JDK1.5 2.开源框架:Lucene3.6.1/IKAnalyzer2012 3.目的:测试IKAnalyzer的分词效果 二.开发调试 1.下载框架 ...

  7. Java实现敏感词过滤 - IKAnalyzer中文分词工具

    IKAnalyzer 是一个开源的,基于java语言开发的轻量级的中文分词工具包. 官网: https://code.google.com/archive/p/ik-analyzer/ 本用例借助 I ...

  8. Solr的学习使用之(三)IKAnalyzer中文分词器的配置

    1.为什么要配置? 1.我们知道要使用Solr进行搜索,肯定要对词语进行分词,但是由于Solr的analysis包并没有带支持中文的包或者对中文的分词效果不好,需要自己添加中文分词器:目前呼声较高的是 ...

  9. Sphinx中文分词安装配置及API调用

    这几天项目中需要重新做一个关于商品的全文搜索功能,于是想到了用Sphinx,因为需要中文分词,所以选择了Sphinx for chinese,当然你也可以选择coreseek,建议这两个中选择一个,暂 ...

随机推荐

  1. C++笔记 2

    1.程序由函数组成,函数只完成自己特定的功能即可   把函数声明写在头文件里(想使用函数时,可直接导入头文件,调用函数),把函数实现写在".cc"文件中   把多个".c ...

  2. C++14尝鲜:Generic Lambdas(泛型lambda)

    所谓泛型lambda.就是在形參声明中使用auto类型指示说明符的lambda. 比方 auto lambda = [](auto x, auto y) {return x + y;}; 依据C++1 ...

  3. laravel 连接mongodb

    In this article we will see how to use MongoDB with Laravel (PHP framework). So first we need to ins ...

  4. 【Unity笔记】将角色的碰撞体朝向鼠标点击方向——角色朝向鼠标

    int floorMask; // 自动寻路层 void Awake() { floorMask = LayerMask.NameToLayer("Floor"); } void ...

  5. C语言 · 拿糖果

    算法提高 拿糖果   时间限制:1.0s   内存限制:256.0MB      问题描述 妈妈给小B买了N块糖!但是她不允许小B直接吃掉. 假设当前有M块糖,小B每次可以拿P块糖,其中P是M的一个不 ...

  6. signal(SIGCHLD, SIG_IGN)和signal(SIGPIPE, SIG_IGN);

    signal(SIGCHLD, SIG_IGN); //忽略SIGCHLD信号,这常用于并发服务器的性能的一个技巧 //因为并发服务器常常fork很多子进程,子进程终结之后需要//服务器进程去wait ...

  7. SpringMVC HandlerMethodArgumentResolver自定义参数转换器 针对HashMap失效的问题

    自定义Spring MVC3的参数映射和返回值映射 + fastjson 自定义Spring MVC3的参数映射和返回值映射 + fastjson首先说一下场景:在一些富客户端Web应用程序中我们会有 ...

  8. netfiler/iptables

    一. 什么是netfilter netfilter is a set of hooks inside the Linux kernel that allows kernel modules to re ...

  9. Android中使用SoundPool来播放音频

    今天找素材重做FlappyBird时学习了一下怎样为应用设置背景音频,发现通过封装SoundPool类就能够非常好的做到这一点. SoundPool类比較适合播放一些类似游戏音效这样的比較短促并且较小 ...

  10. rufus/scheduler

    之前先在initializers 文件夹下建立了一个task.rb ,rails服务启动的时候执行,本地没问题,可是服务器上启动了3个进程,会执行3遍,解决方法是 把task.rb 放到 script ...