zoukankan      html  css  js  c++  java
  • Linux下Solr单机版、集群版安装与配置

    一、安装

    1、需要的安装包有apache-tomcat-7.0.47.tar.gz、solr-4.10.3.tgz.tgz(jdk自行安装)

    这里默认大家已经安装好jdk与tomcat,所以在这里不做说明,jdk安装点击这里,tomcat直接解使用。

    2、解压solr的安装包,把tar -zxvf solr-4.10.3.tgz.tgz解压

    [root@localhost local]# tar -zxvf solr-4.10.3.tgz.tgz

    3、进入solr-4.10.3/dist下把solr-4.10.3.war复制到tomcat的webapps下面,并改名为solr.war

    [root@localhost dist]# cp solr-4.10.3.war /usr/local/tomcat/webapps/solr.war

    4、启动tomcat , war包自动解压,再把tomcat停止,删除solr.war包

    进入/usr/local/tomcat/bin启动tomcat 
    [root@localhost bin]# ./startup.sh 
    
    停止tomcat
    [root@localhost bin]# ./shutdown.sh 
    
    进入/usr/local/tomcat/webapps
    删除solr.war包
    [root@localhost webapps]# rm -rf solr.war

    5、把刚刚解压的solr目录下/usr/local/solr-4.10.3/example/lib/ext  ext文件夹里面的所以jar复制到tomcat里面solr工程的WEB-INF/lib/下面

    [root@localhost ext]# cp * /usr/local/tomcat/webapps/solr/WEB-INF/lib/

     6、创建solrhome文件夹。

    该文件夹用来存放solr服务器所有配置文件。

    将solr-4.10.3/example中的solr文件夹复制至/usr/local/ 下面,并改名solrhome

    [root@localhost example]# cp -r  solr /usr/local/solrhome

    7、在tomcat里面solr工程中的web.xml文件中指定solrhome的位置  要进入/usr/local/tomcat/webapps/solr/WEB-INF下才有web.xml文件

    <env-entry>
        <env-entry-name>solr/home</env-entry-name>
        <env-entry-value>/usr/local/solrhome</env-entry-value>
        <env-entry-type>java.lang.String</env-entry-type>
    </env-entry>

    一开始这里是注释掉的,所以我们要去掉注释

     8、保存退出。启动tomcat

     9、在浏览器地址栏输入http://192.168.25.101:8080/solr   就可以看到页面了,说明安装成功。

     二、配置中文分析器   IK Analyzer

    1、把IK Analyzer 2012FF_hf1文件夹上传到linux下。

     

    2、IKAnalyzer2012FF_u1.jar 添加到tomcat下webapp中solr 工程的WEB-INF/ lib 目录下

    [root@localhost IK Analyzer 2012FF_hf1]# cp IKAnalyzer2012FF_u1.jar /usr/local/tomcat/webapps/solr/WEB-INF/lib/

     3、在tomcat下webapp中solr 工程的WEB-INF/下创建classes文件夹  把扩展词典、停用词词典、配置文件放到 solr 工程的 WEB-INF/classes 目录下。

    [root@localhost IK Analyzer 2012FF_hf1]# mkdir /usr/local/tomcat/webapps/solr/WEB-INF/classes
    [root@localhost IK Analyzer 2012FF_hf1]# cp ext_stopword.dic IKAnalyzer.cfg.xml mydict.dic  /usr/local/tomcat/webapps/solr/WEB-INF/classes/

     4、在solrhome/collection1/conf/schema.xml中配置filedType,可直接在后面添加

    [root@localhost solrhome]# vim solr/collection1/conf/schema.xml
    <fieldType name="text_ik" class="solr.TextField">
            <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>
    </fieldType>

     

    5、配置域

    在solrhome/collection1/conf/schema.xml中配置,根据业务需要选择相应的字段对应solr的字段

    <field name="item_goodsid" type="long" indexed="true" stored="true"/>
    <field name="item_title" type="text_ik" indexed="true" stored="true"/>
    <field name="item_price" type="double" indexed="true" stored="true"/>
    <
    field name="item_image" type="string" indexed="false" stored="true" />
    <field name="item_category" type="string" indexed="true" stored="true" />
    <
    field name="item_seller" type="text_ik" indexed="true" stored="true" /> <field name="item_brand" type="string" indexed="true" stored="true" />

     

    6、复制域

    复制域的作用在于将某一个Field中的数据复制到另一个域中

    <field name="item_keywords" type="text_ik" indexed="true" stored="false" multiValued="true"/>
    <copyField source="item_title" dest="item_keywords"/>
    <copyField source="item_category" dest="item_keywords"/>
    <copyField source="item_seller" dest="item_keywords"/>
    <copyField source="item_brand" dest="item_keywords"/> 

     

    7、动态域

    当我们需要动态扩充字段时,我们需要使用动态域。

    对于一些商城项目规格的值是不确定的,所以我们需要使用动态域来实现。需要实现的效果如下:

     

    配置:

    <dynamicField name="item_spec_*" type="string" indexed="true" stored="true" />    

     

    8、保存退出,重启tomcat

  • 相关阅读:
    axios的全局配置
    Vue:vue-router编程式导航
    【spring源码系列】之【Bean的属性赋值】
    【spring源码系列】之【Bean的实例化】
    【spring源码系列】之【Bean的生命周期】
    【spring源码系列】之【BeanDefinition】
    【spring源码系列】之【xml解析】
    【spring源码系列】之【环境搭建】
    mysql去重
    Nacos 服务推送和发现
  • 原文地址:https://www.cnblogs.com/limn/p/9747796.html
Copyright © 2011-2022 走看看