1. 安装JRE,采用1.8的版本;
jre目录以及子目录授予root权限
chown root:root -R /usr/lib/jre1.8.0_172
编辑环境变量配置文件
vi /etc/profile
在文件末尾加入下面代码,强制保存(w!)退出
export JAVA_HOME=/usr/lib
export JRE_HOME=/usr/lib/jre1.8.0_172
export CLASSPATH=$JRE_HOME/lib/rt.jar:$JRE_HOME/lib/ext
export PATH=$PATH:$JRE_HOME/bin
使环境变量即时生效
source /etc/profile
2. 准备tomcat,这边用的是apache-tomcat-8.0.51
3. 解压solr
4. 在Tomcat的webapps下新建solr目录
mkdir /usr/local/apache-tomcat-8.0.51/webapps/solr
复制/root/solr/solr-7.3.0/server/solr-webapp/webapp到/usr/local/apache-tomcat-8.0.51/webapps/solr目录
5. 新建solr_home目录,例如mkdir /usr/local/solr_home/
将解压后的solr-7.3.0文件夹下server\lib\ext内的所有jar包、server\lib内以metrics开头的所有jar包,以及gmetric4j-1.0.7.jar
复制到tomcat安装目录下的webapps\solr\WEB-INF\lib下。
6.在tomcat安装目录下的webapps\solr\WEB-INF中,新建一个classes文件夹,将解压后的solr-7.3.0文件夹下server\resources内的log4j.properties文件拷贝到里面
mkdir /usr/local/apache-tomcat-8.0.51/webapps/solr/WEB-INF/classes
7. 拷贝solr-7.3.0文件夹下/root/solr/solr-7.3.0/server/solr内的所有文件到solr_home的文件夹中(即solr的安装目录)
8. 在solr_home文件夹下新建一个logs文件夹
mkdir /usr/local/solr_home/logs
修改tomcat安装目录下bin文件夹中的catalina.sh,添加solr.log.dir系统变量, 指定solr日志记录存放地址(即上面创建的logs文件夹路径)。
JAVA_OPTS="$JAVA_OPTS -Dsolr.log.dir=/usr/local/solr_home/logs"
9. 在solr_home文件夹下新建一个new_core文件夹,将解压后的solr-7.3.0文件夹下/root/solr/solr-7.3.0/server/solr/configsets/_default下的conf文件夹拷贝到里面,
然后修改conf文件夹里solrconfig.xml文件,如下:
10. 修改tomcat安装目录下/usr/local/apache-tomcat-8.0.51/webapps/solr/WEB-INF/web.xml,添加如下内容:
注释如下配置:
11. 查看solr, http://localhost:8080/solr/index.html#/
点击Core Admin菜单,如果没有Core,会弹出如下框,直接添加Add Core。
添加以后就可以选择使用了。
instanceDir: solr安装目录下的new_core文件夹的路径
dataDir: solr安装目录下的new_core\data文件夹的路径
config: solr安装目录下的new_core\conf\solrconfig.xml文件的路径
schema: solr安装目录下的new_core\conf\managed-schema文件的路径
12. 到这里solr的环境就搭建好了,但是没有中文分词功能,可以测试一下。下面开始整合中文分词器;
13. 将/root/solr/solr-7.3.0/contrib/analysis-extras/lucene-libs/lucene-analyzers-smartcn-7.3.0.jar复制到/usr/local/apache-tomcat-8.0.51/webapps/solr/WEB-INF/lib下。
14. 在/usr/local/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自带的分词器了,测试自带分词。
15. 配置IK中文分词器(好处:IKAnalyzer支持屏蔽关键词、新词汇的配置)。解压ikanalyzer-solr6.5.zip:
solr-analyzer-ik-5.1.0.jar、ik-analyzer-solr5-5.x.jar为分词jar包;
ext.dic为扩展字典;
stopword.dic为停止词字典;
IKAnalyzer.cfg.xml为配置文件。
将IK分词器Jar包solr-analyzer-ik-5.1.0.jar、ik-analyzer-solr5-5.x.jar拷贝到/usr/local/apache-tomcat-8.0.51/webapps/solr/WEB-INF/lib下。
将ext.dic、stopword.dic、IKAnalyzer.cfg.xml拷贝到/usr/local/apache-tomcat-8.0.51/webapps/solr/WEB-INF/classes下。
16. 修改/usr/local/solr_home/new_core/conf/managed-schema:
重新启动Tomcat,就可以使用IK中文分词器了,测试IK分词。
对于我,是,没有再出现(因为在stopword.dic停用词词典中进行了配置)。