solr服务器配置

2017-03-20  本文已影响0人  发光的鱼

1.solr介绍

solr是apache旗下开源项目,主要用于文档创建索引,查询的一个工程,基于lucene进行封装开发,具有可视化操作页面

2.安装solr

地址:http://mirror.bit.edu.cn/apache/lucene/solr/6.4.2

3.目录结构

4.server文件夹介绍

5.配置solr

在solr目录下创建collection的文件夹,例如

# cd /solr-version-path/server/solr
# mkdir collection1

拷贝主要配置文件到collection1文件夹里

# cd /solr-version-path/server/solr
# cp configsets/basic_configs/conf ../
# 

修改solrconfig配置文件
在文件中加入数据库连接requestHandler ,并指定配置文件

<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 version="1.0" encoding="UTF-8" ?>
<dataConfig>
        <dataSource name="jdbc" 
                driver="com.mysql.jdbc.Driver" 
                url="jdbc:mysql://192.168.0.252:3306/***?characterEncoding=utf8&amp;useUnicode=true" 
                user="root" password="****" batchSize="-1"/>
                <document name="data">
                        <entity name="crawldata" pk="id" query="sql">
                                    <!-- 配置数据库字段和solr字段的映射关系 -->
                                    <field name="id" column="id" />
                        </entity >
            </document >
      </dataSource >
</dataConfig>

修改managed-schema配置文件,配置solr字段,之后solr查询的所有字段都从该文件中指定,不能查询没有指定的字段

<!--  name:字段名称,  type:字段类型, indexed:是否索引, strored:打分  required:是否必须,multiValued:是否多值  -->
<field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false" />

<!-- 配置ik分词器 -->
<fieldType name="text_ik" class="solr.TextField">
                        <analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
                        <analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
        </fieldType>

      <!--配置IK分词器同义词-->
         <fieldType name="text_syn" class="solr.TextField">
                <analyzer type="query">
                        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
                        <filter class="solr.LowerCaseFilterFactory"/>
                </analyzer>
                <analyzer type="index">
                        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
                        <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="false" />
                        <filter class="solr.LowerCaseFilterFactory"/>
                </analyzer>
        </fieldType>

ik分词器位置:
ik分词器词库需要自己整理

6.启动solr(默认8983端口)

# cd /solr-version-path/bin
# ./solr start -force
上一篇下一篇

猜你喜欢

热点阅读