solr7安装和配置

solr7


安装

  • 下载
    http://apache.fayea.com/lucene/solr/
    我选了7.4.0最新的,
    网上还有很多人用5或者6的,因为分词不支持什么的,其实是支持的,都有了。
    另外不同版本确实安装步骤不是完全一样。

  • 下载和配置 tomcat和jdk

  • 配置
    1、解压 solr-7.4.0.tgz 换个名字叫solr7
    2、将server/solr-webapp/webapp 重新命名solr,并复制到tomcat/webapps下面
    3、tomcat/webapps/solr/WEB-INF 下建立一个文件夹 classes
    4、新建一个文件夹,不要中文目录,用来做solrHome,也就是solrCore的实例存放位置,我就建在solr7下面
    mkdir solr_home
    5、tomcat/webapp/solr/WEB-INF/web.xml 配置solr/home 吧注释去掉,然后路径改掉

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

6、 复制server/resource/log4j.properties 到刚刚建立的classes 文件夹
其实是log4j2.xml
7、把solr7/server/lib/ext/ 下的jar包复制到tomcat/webbapps/solr/WEB-INF/lib/中
8、把solr7/dist下面的jar包也复制过去
9、solr7/server/lib下面的metrics开头的也复制过去
10、将 /webapps/solr/WEB-INF 下面的 web.xml 最尾巴上的

分词

下载https://github.com/magese/ik-analyzer-solr7
自己maven打包 成 ik-analyzer-solr7-7.x.jar
tomcat/webapp/solr/WEB-INF/lib里面。
(千万不要复制到tomcat/lib中,这样会找不到lucene的类)

添加 vi solr7/solr_home/new_core/core1/conf/managed-schema 尾巴上

    "text_ik" class="solr.TextField">
        type="index" useSmart="false"
            class="org.wltea.analyzer.lucene.IKAnalyzer" />
        type="query" useSmart="true"
            class="org.wltea.analyzer.lucene.IKAnalyzer" />
    

页面咋操作,见https://www.cnblogs.com/zhuxiaojie/p/5764680.html 我就不贴图了

域的定义 field

具体使用和语法,看其他blog,这边不再复制一遍

但是我困惑了很久,到底是个啥东西,title就可以,title1就不行,我也没配过,
后来发现managed-schema (老版本schema.xml) 预设了很多字段
id,name,context。。。。。很多
title1 不行,是因配置文件里面没有,-_-||

dataimport 数据库

mysql-connector-java-5.1.42.jar 放到
/usr/local/api/tomcat8-10080-solr/webapps/solr/WEB-INF/lib
还有solr/dist/ 下面的solr-dataimporthandler-7.4.0.jar 也放过去

<requestHandler name="/dataimport" class="solr.DataImportHandler">
      <lst name="defaults">
            <str name="config">data-config.xmlstr>
      lst>
  requestHandler>
<dataConfig>
    
    <dataSource driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/solr/useUnicode=true&characterEncoding=utf-8" user="bbtang" password="bbtang"/>
    <document>
        
        
        <entity name="product" query="select * from products">
            
            <field column="pid" name="id"/>
            <field column="name" name="product_name"/>
            <field column="catalog" name="product_catalog"/>
            <field column="catalog_name" name="product_catalog_name"/>
            <field column="price" name="product_price"/>
            <field column="description" name="product_description"/>
            <field column="picture" name="product_picture"/>
        entity>
    document>
dataConfig>

ps: xml里面 &要写成 &

你可能感兴趣的:(java)