一、安装环境以及软件版本
- JDK 1.8
- Windows7
- Solr7.2.1
- Tomcat9
安装包准备
二、版本下载
(1)JDK
版本列表 :https://www.oracle.com/technetwork/java/javase/archive-139210.html
https://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8u211-later-5573849.html
(2)Solr
版本列表 :http://archive.apache.org/dist/lucene/solr/
(3)Tomcat下载
http://mirror.bit.edu.cn/apache/tomcat/tomcat-9/v9.0.22/bin/
(4)ik下载
链接:https://pan.baidu.com/s/1BceWgiTBBpyolRNoEbMuUg
提取码:7nfp
三、搭建Solr环境
(1)解压下载的solr-7.2.1压缩包,将解压后的solr-7.2.1文件夹下server\solr-webapp\webapp文件夹拷贝到tomcat安装目录下的webapps文件夹中,并重命名为solr。如下图:
(2)创建一个solr_home的文件夹作为solr的安装目录。例如:D:\solr\solr_home
(3)将解压后的solr-7.2.1文件夹下server\lib\ext内的所有jar包、server\lib内以metrics开头的所有jar包,以及gmetric4j-1.0.7.jar复制到tomcat安装目录下的webapps\solr\WEB-INF\lib下
(4)在tomcat安装目录下的webapps\solr\WEB-INF中,新建一个classes文件夹,将解压后的solr-7.2.1文件夹下server\resources内的log4j.properties文件拷贝到里面
(5)拷贝solr-7.2.1文件夹下server\solr内的所有文件到solr_home的文件夹中(即solr的安装目录)
(6)在solr_home文件夹下新建一个logs文件夹
(7)修改tomcat安装目录下bin文件夹中的catalina.bat,添加solr.log.dir系统变量, 指定solr日志记录存放地址(即上面创建的logs文件夹路径)。例如:
set "JAVA_OPTS=%JAVA_OPTS% -Dsolr.log.dir=D:\solr\solr_home\logs"
(8)在solr_home文件夹下新建一个new_core文件夹,将解压后的solr-7.2.1文件夹下server\solr\configsets\_default下的conf文件夹拷贝到里面,然后修改conf文件夹里solrconfig.xml文件,如下:
改为
(9)修改tomcat安装目录下webapps\solr\WEB-INF内的web.xml文件:
添加内容:
注释内容:
(10)查看solr, http://localhost:8080/solr/index.html#/
instanceDir solr安装目录下的new_core文件夹的路径
dataDir solr安装目录下的new_core\data文件夹的路径
config solr安装目录下的new_core\conf\solrconfig.xml文件的路径
schema solr安装目录下的new_core\conf\managed-schema文件的路径
添加以后就可以选择使用了
四、整合分词器
(1)使用solr7.2.1自带的中文分词器
将解压后的solr-7.2.1\contrib\analysis-extras\lucene-libs下的lucene-analyzers-smartcn-7.2.1.jar 放到Tomcat\webapps\solr\WEB-INF\lib下
在D:\solr\solr_home\new_core\conf找到managed-schema 添加已下代码
<fieldType name="text_ik_zd" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>
</analyzer>
</fieldType>
重新启动Tomcat,就可以使用solr自带的分词器了
(2)配置ik中文分词器(好处:IKAnalyzer支持屏蔽关键词、新词汇的配置)
解压ikanalyzer-solr5把ik-analyzer-solr5-5.x.jar与solr-analyzer-ik-5.1.0.jar拷贝到Tomcat\webapps\solr\WEB-INF\lib下
IKAnalyzer.cfg.xml
ext.dic
stopword.dic
- stopword.dic为停止词字典
- ext.dic 扩展分词字典
- IKAnalyzer.cfg.xml为配置文件
- solr-analyzer-ik-5.1.0.jar ik-analyzer-solr5-5.x.jar为分词jar包
把ext.dic、log4j.properties、stopword.dic拷贝到Tomcat\webapps\solr\WEB-INF\classes目录下
更改在D:\solr\solr_home\new_core\conf找到managed-schema配置文件,添加以下:
<fieldType name="text_ik" class="solr.TextField">
<analyzer type="index">
<tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory" useSmart="true"/>
</analyzer>
<analyzer type="query">
<tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory" useSmart="true"/>
</analyzer>
</fieldType>
重新启动Tomcat