善忘技术夹 Logo
善忘技术夹
技术文章 · 7409 阅读

solr6.6.1安装和配置

solr安装与配置

官网下载最新的软件安装包:http://lucene.apache.org/solr/mirrors-solr-latest-redir.html

解压,我这里使用的是ubuntu, unzip 解压到了/opt/solr-6.6.1

所有要用到的文件:solr6.5ik-pinyin.zip ik分词,这里先配置好, 不然后续还需要通过命令方式来更新zookeeper的配置信息

提供一个备用地址:http://ip.jishijun.cn:5000/sharing/qhx7iDjKc

解压上面下载的文件

复制ext.dic  IKAnalyzer.cfg.xml  stopword.dic 到 /opt/solr-6.6.1/server/solr-webapp/webapp/WEB-INF/classes

如果classes文件没有,请自己创建

复制

ik-analyzer-solr5-5.x.jar

mysql-connector-java-5.1.30-bin.jar

pinyin4j-2.5.0.jar

pinyinAnalyzer4.3.1.jar

solr-analyzer-ik-5.1.0.jar

/opt/solr-6.6.1/server/solr-webapp/webapp/WEB-INF/lib

编辑文件

vim /opt/solr/solr-6.5.1/server/solr/configsets/data_driven_schema_configs/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>

<fieldType name="text_pinyin" class="solr.TextField" positionIncrementGap="0">

    <analyzer type="index">

        <tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory"/>

        <filter class="com.shentong.search.analyzers.PinyinTransformTokenFilterFactory" minTermLenght="2" />

        <filter class="com.shentong.search.analyzers.PinyinNGramTokenFilterFactory" minGram="1" maxGram="20" />

    </analyzer>

    <analyzer type="query">

        <tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory"/>

        <filter class="com.shentong.search.analyzers.PinyinTransformTokenFilterFactory" minTermLenght="2" />

        <filter class="com.shentong.search.analyzers.PinyinNGramTokenFilterFactory" minGram="1" maxGram="20" />

    </analyzer>

</fieldType>

   

如图

配置后,就可以按照官网的方式启动服务了

进入到solr的目录下执行:我的目录为:/opt/solr-6.6.1

bin/solr start -e cloud -noprompt

启动截图

错误提示

发现是因为配置了ik分词的错误,从错误提示上看

发现是没有拷贝ik分词的jar包进去/opt/solr-6.6.1/server/solr-webapp/webapp/WEB-INF/lib

启动成功, 默认会有一个gettingstartedcollection

可以看到 集群启动的方式启动的

配置自己的集合

发现自己的穿件的少了两个节点

在这里添加

如果

8983已经被占用了, 就可以使用另外一个端口添加即可

如下图

同样,下面的shard2也这么操作,端口不一样 

添加完成后, 不会马上出来, 过会刷新后就有了

测试中文分词

提示一下,现在网络上很多配置都是基于tomcat的方式配置安装的,其实没有必要,现在官网上的直接启动就是集群方式,不需要和以前一样copy webapp目录到tomcat下面去配置了