17- Solr部署和使用

2017-09-15  本文已影响0人  熙熙爸爸

部署solr通常有2中方式,一个是部署在外部的web容器中例如tomcat,另一个是使用solr内置的jetty作为web容器。
我们这里采用内置的jetty作为web容器的部署方式。

1.下载solr

下载solr
本次使用的solr版本是6.6.0
下载之后找到合适的位置解压

2. 启动solr

在打开cmd窗口进入solr的解压目录下的bin文件夹执行

solr start -p 8983
启动solr

这时我们就可以在浏览器访问solr的管理界面

solr管理界面

3. 创建core

solr create -c name

来创建core

创建core

根据上面命令的反馈可以得到一些有用的信息

  1. 每个core需要有一个 core instance directory
  2. 可以使用solr的rest 接口来实现core的创建

这时候我们刷新下一管理界面就可以看到


创建成功
  1. 在solr.home 目录下创建一个文件夹,和core的名称相同


    查看solr.home

这里我们创建core3

创建core3

2.拷贝配置文件到core3中
上图中的configsets文件中存放的是基本的配置文件
我们把configsets中的basic_configs下的conf拷贝到core3中

image.png

然后在core3中新建文件夹data,作为索引数据的存放文件

core3
  1. 创建core
    在solr管理页面中点击core admin 下的 add core,修改name 和instanceDir为core3,然后点击add core
image.png
  1. 创建完成
    点击完成之后 core admin中就会多了一个core3


    创建完成

core3的文件夹下面也多出了额一个core.properties文件

core.properties

内容是

#Written by CorePropertiesLocator
#Fri Sep 15 03:34:37 UTC 2017
name=core3
config=solrconfig.xml
schema=schema.xml
dataDir=data

首先完成方法二的前两步,给core取名为core4

  1. 请求solr rest接口
http://localhost:8983/solr/admin/cores?action=CREATE&name=core4&instanceDir=core4
请求结果
  1. 创建成功
成功

4. 导入数据

solr中负责导入数据的模块叫做DataImportHandler,它有多种实现方式

  1. 修改solrconfig.xml
    添加如下配置
<requestHandler name="/dataimport" class="solr.DataImportHandler">
    <lst name="defaults">
      <str name="config">db-data-config.xml</str>
    </lst>
  </requestHandler>
  1. 从example中拷贝db-data-config.xml到core1,并根据数据库的使用情况进行修改,我这里使用的是mysql
<dataConfig>
    <dataSource driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/test" user="root" password="123456" />
    <document>
        <entity name="item" query="select * from showentity">
            <field column="description" name="description" />
            <field column="title" name="title" />
            <field column="createTime" name="createTime" />
            <field column="type" name="type" />
        </entity>
    </document>
</dataConfig>
  1. 将mysql的数据库连接jar拷贝到solr根目录的dist文件中,然后修改solrconfig.xml,加载这个jar包 ,和dataimport相关的jar包
<lib dir="${solr.install.dir:../../../..}/dist/" regex=".*\.jar" />

加载jar包
  1. 修改managed-schema为schema.xml并根据db-data-config.xml中的配置的从数据库导入的字段进行修改.
    <field name="title" type="text_general" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="description" type="text_general" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="createTime" type="date" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="type" type="string" indexed="true" stored="true" required="true" multiValued="false" />

  1. 在core admin选项中 选择刚刚修改的core,然后点击reload按钮,加载刚刚上面修改的配置
reload
  1. 开始导入数据
    选择刚刚修改的core 下面的DataImport选项,然后点击execute按钮
导入数据
  1. 进行查询
    在query选项中进行查询,发现数据已经导入进去了
查询

总结

ok到这里就完成了solr单点的部署和简单的配置,后面会继续总结一下solr cloud集群的部署,solr一些配置文件的说明等

上一篇下一篇

猜你喜欢

热点阅读