• linux下solr的安装与配置


    准备工作

    1. 下载solrtomcat

      solr-4.8.1.tgz,apache-tomcat-7.0.54.tar.gz

     

    1. 打开/home/cluster,解压缩

    tar zxvf apache-tomcat-7.0.54.tar.gz

    tar zxvf solr-4.8.1.tgz

    开始安装配置solr

    1. 建立solrhome

      mkdir -p /home/cluster/solrhome

     

    1. 把solr的war包拷贝出来 并且重命名为solr.war 放到任意文件夹 本例将其放到 solrhome下面

    cp  /home/cluster/solr-4.8.1/dist/solr-4.8.1.war  /home/cluster/solrhome/solr.war

     

    1. 然后 将/home/cluster/solr-4.8.1/example/solr 文件夹拷贝到 solrhome文件夹下面(此例子目录是单core模式 如果是多core模式 则拷贝multicore) 

    cp -r /home/cluster/solr-4.8.1/example/solr  /home/cluster/solrhome

    1. 然后将解压后solr-4.8.1文件夹中的contrib和dist文件夹,拷贝到/home/soft/solr-4.5.1/example/solr /home/soft/solrhome/ solr

    cp  -rf   /home/cluster/solr-4.8.1/contrib  /home/cluster/solrhome/solr

    cp  -rf   /home/cluster/solr-4.8.1/dist  /home/cluster/solrhome/solr

    配置tomcat

    1. 在 tomcat的conf/Catalina/localhost/文件夹下面 建立solr.xml(docBase指向war solr/home 指向sorlhome里面的solr文件夹)

    vi conf/Catalina/localhost/solr.xml 

    <?xml version="1.0" encoding="utf-8"?> 

    <Context docBase="/home/cluster/solrhome/solr.war" reloadable="true" > 

    <Environment name="solr/home" type="java.lang.String" value="/home/cluster/solrhome/solr/" override="true" /> 

    </Context>

    1. solr的日志相关的jar包 

    把/home/cluster/solr-4.8.1/example/lib/ext 下面的全部jar 拷贝到 tomcat 的lib文件夹下面 

    把 /home/cluster/solr-4.8.1/example/resources 下面的log4j配置文件 拷贝到 tomcat的 lib文件夹下面

     

    1. 单机版的配置修改 

    找到 每个collection下面的conf文件夹里面的solrconfig.xml 

    将<searchComponent name="clustering" enable="${solr.clustering.enabled:true}" class="solr.clustering.ClusteringComponent" > 

    改成<searchComponent name="clustering" enable="${solr.clustering.enabled:false}" class="solr.clustering.ClusteringComponent" >

     

    1. 修改solrconfig.xml文件中的引入的jar包位置

    <lib dir="../../../contrib/extraction/lib" regex=".*.jar" />

    <lib dir="../../../dist/" regex="solr-cell-d.*.jar" />

    <lib dir="../../../contrib/clustering/lib/" regex=".*.jar" />

    <lib dir="../../../dist/" regex="solr-clustering-d.*.jar" />

    <lib dir="../../../contrib/langid/lib/" regex=".*.jar" />

    <lib dir="../../../dist/" regex="solr-langid-d.*.jar" />

    <lib dir="../../../contrib/velocity/lib" regex=".*.jar" />

    <lib dir="../../../dist/" regex="solr-velocity-d.*.jar" />

    改为绝对路径

      <lib dir="/home/cluster/solrhome/solr/contrib/extraction/lib" regex=".*.jar" />

      <lib dir="/home/cluster/solrhome/solr/dist/" regex="solr-cell-d.*.jar" />

      <lib dir="/home/cluster/solrhome/solr/contrib/clustering/lib/" regex=".*.jar" />

      <lib dir="/home/cluster/solrhome/solr/dist/" regex="solr-clustering-d.*.jar" />

      <lib dir="/home/cluster/solrhome/solr/contrib/langid/lib/" regex=".*.jar" />

      <lib dir="/home/cluster/solrhome/solr/dist/" regex="solr-langid-d.*.jar" />

      <lib dir="/home/cluster/solrhome/solr/contrib/velocity/lib" regex=".*.jar" />

      <lib dir="/home/cluster/solrhome/solr/dist/" regex="solr-velocity-d.*.jar" />

    配置IK分词

    下载IK Analyzer 2012FF_hf1.zip(这个版本支持4.0以上)

    解压后将IKAnalyzer2012FF_u1.jar放到tomcat/webapps/solr/WEB-INF/lib下面,并且在 tomcat/webapps/solr/WEB-INF/下面 创建classes目录 然后将IK****.zip 解压缩后将IKAnalyzer.cfg.xml 和stopword.dic 两个文件拷贝到classes目录 

    这个不一定用配,得看文件中是否配过了 

    修改 solrhome 下面的collection1/conf/schema.xml 加入如下类型 

    <fieldType name="text_ik" class="solr.TextField"> 

    <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/> 

    <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" /> 

    </fieldType>

    Ok 启动你的tomcat 访问http://localhost:8080/solr 看下管理界面 可进入测试了

     

     

     

    mysql数据库配置

    第一步导依赖包:

    Solr包(在solr-4.8.1/dist目录下),如果找不到包的话,可用使用find –name solr-datai*查询一下

    solr-dataimporthandler-4.8.1.jar

    solr-dataimporthandler-extras-4.8.1.jar

    数据库包

    mysql-connector-java-3.0.10-stable-bin.jar放到 /home/cluster/solrhome/solr/dist下

    同时在/home/cluster/solrhome/solr/collection1/conf下的solrconfig.xml引入jar

    <lib dir="/home/cluster/solrhome/solr/dist/" regex="solr-dataimporthandler-d.*.jar" />

    <lib dir="/home/cluster/solrhome/solr/dist/" regex="mysql-connector-java-3.0.10-stable-bin.jar" />

     

     

    第二步

    配置solrconfig.xml

    在solrconfig.xml中加入如下配置:

    <requestHandler   name = "/dataimport"   class = "org.apache.solr.handler.dataimport.DataImportHandler" >   

    <lst   name = "defaults" >   

    <str   name = "config" >data-config.xml</str>   

    </lst>   

    </requestHandler > 

    第三步

    创建data-config.xml文件,在使用vi编辑这个文件的时候注意,属性之间的空格,注意不要用汉字的双引号,同时注意field是在schema.xml中定义过的属性。

    <dataConfig>  

      <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver"   

       url="jdbc:mysql://localhost:3306/****?useUnicode=true&characterEncoding=utf-8" user="root" password="mysql"/>  

       <document name="search_object"> 

          <entity name="cource" query="SELECT id,name,description,price_per_day FROM t_course">  

            <field column="id" name="id"/>  

            <field column="name" name="name"/>

            <field column="description" name="description"/>

            <field column="price_per_day" name="price_per_day"/>

            <entity name="courceImage"

                   query="SELECT file_path FROM t_course_image,t_course WHERE course_id ='${cource.id}'">

                  <field column="file_path" name="file_path"/> 

           </entity>  

          </entity>  

       </document>  

    </dataConfig>

     

     

    在D: omcat-6.0.18webappssolrWEB-INFlib中加入mysql驱动包mysql-connector-java-5.0.4-bin.jar

     

    6,将下载的apache-solr-3.6.2/dist/文件夹中的solr-dataimporthandler-4.8.1.jar、solr-dataimporthandler-extras-4.8.1.jar

    拷贝到D: omcat-6.0.18webappssolrWEB-INFlib文件夹中

     

     

    配置完上边的内容后,可以启动tomcat进行数据导入,按下边图片操作即可

     

     

    成功之后,可以查询到结果了

     

     

     

  • 相关阅读:
    贪心算法过河问题 pojo1700
    大脑的合理使用
    给自己的忠言
    篮子水果模拟消费者生产者
    线程安全高效的单例模式
    Java提高篇——JVM加载class文件的原理机制
    递归的研究
    虚拟机分区方法
    使用spark dataSet 和rdd 解决 某个用户在某个地点待了多长时间
    获取数据集的好的方
  • 原文地址:https://www.cnblogs.com/na-java/p/3929366.html
Copyright © 2020-2023  润新知