美文网首页
如何在linux上面配置solr

如何在linux上面配置solr

作者: 阿登20 | 来源:发表于2021-05-10 07:47 被阅读0次

如何在linux上安装solr

一.安装solr

1.下载

地址 http://archive.apache.org/dist/lucene/solr/7.6.0/

image.png

2.上传到linux系统

image.png

3.解压

进入solr压缩包存放的文件夹

解压命令: tar -zxvf solr-7.6.0.tgz

image.png

4 移动到准备安装的路径下

一般我们会将自己安装的软件放在usr/local文件夹中

先在usr/local下创建solr文件夹

image.png

然后移动文件

image.png
  进入usr/local/solr文件夹查看时候操作成功
image.png

5.启动服务

  5.1 进入 solr-7.6.0/bin文件夹

  ![image.png](https://img.haomeiwen.com/i13983750/2dbbe4ad29162b2f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


  5.2输入启动命令  ./solr start, 会显示进程限制的警告信息
image.png
5.3 通过修改solr.in.sh文件取消进程限制
image.png

将SOLR_ULIMIT_CHECKS改为false

image.png
 5.4  重启启动服务,可能会出现如图警告

   ![image.png](https://img.haomeiwen.com/i13983750/2650fab00dbaeebf.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


5.5  使用 ./solr restart -force 方式启动,出现Happy searching 代表启动成功.
image.png

6 访问

windows系统或linux系统浏览器上 输入192.168.1.6:8983/solr访问

注意ip用你自己的linux服务器的ip   
image.png

二 . 如何创建core

在solr中,每一个core代表一个索引库,里面保存索引数据以及配置信息

solr中可以有多个core,也就相当于mysql服务器下可以多个数据库

1 创建core文件夹

在solr-7.6.0/server/solr 文件夹下创建一个core文件夹 ,取名为goods

image.png

2 复制conf文件夹

将solr-7.6.0/server/solr/configsets/_default下的conf文件复制一份到goods文件夹下

我这里是进入到_default文件夹后复制(哪个目录都可以复制,注意路径就可以)

cp -r conf /usr/local/solr/solr-7.6.0/server/solr/goods/

image.png

3 在solr页面添加core

image.png
image.png

三 添加中文分词器ik-analyzer

solr默认不支持中文分词

1 添加ik-analyzer-7.6.0.jar包

下载的ik-analyzer-7.6.0.jar(之前windows里下载的拿过来用就可以),上传到linux服务器
image.png

cp ik-analyzer-7.6.0.jar /usr/local/solr/solr-7.6.0/server/solr-webapp//webapp/WEB-INF/lib/

并复制到solr-webapp/webapp/WEB-INF/lib 目录中

image.png

2.修改goods文件夹里的配置文件managed-schema

  输入命令  vim server/solr/goods/conf/managed-schema 进入编辑状态
image.png
 添加如下内容到managed-schema文件中,并保存退出
<!-- ik分词器 -->
<fieldType name="text_ik" class="solr.TextField">
  <analyzer type="index">
     <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="false" conf="ik.conf"/>
     <filter class="solr.LowerCaseFilterFactory"/>
  </analyzer>
  <analyzer type="query">
     <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true" conf="ik.conf"/>
     <filter class="solr.LowerCaseFilterFactory"/>
  </analyzer>
</fieldType> 

[图片上传失败...(image-4c13c2-1620466127169)]

3.重启服务器

进入bin文件夹,输入命令 ./solr restart -force


image.png

4.测试

image.png image.png

四 导入数据库中数据

1.导入3个jar包

这里需要导入下载的mysql驱动包和solr-7.6.0/dist下的dataimporthandler-7.6.0.jar和dataimporthandler-extras-7.6.0.jar

先将mysql驱动包上传到linux

image.png

再复制到solr-7.6.0/server/solr-webapp/webapp/WEB-INF/lib下

cp /data/mysql-connector-java-5.1.38.jar /usr/local/solr/solr-7.6.0/server/solr-webapp//webapp/WEB-INF/lib/

image.png

进入solr-7.6.0/dist文件夹,复制dataimporthandler-7.6.0.jar和dataimporthandler-extras-7.6.0.jar
cd /usr/local//solr//solr-7.6.0/dist/
cp solr-dataimporthandler-7.6.0.jar /usr/local/solr/solr-7.6.0/server/solr-webapp//webapp/WEB-INF/lib/

image.png

cp solr-dataimporthandler-extras-7.6.0.jar /usr/local/solr/solr-7.6.0/server/solr-webapp//webapp/WEB-INF/lib/

image.png

cd /usr/local/solr/solr-7.6.0/server/solr-webapp//webapp/WEB-INF/lib/

image.png

2.创建data-config.xml文件

先在goods/conf文件夹下创建mysql-db文件夹
find . -name conf 当前文件搜索conf目录并且切进去

image.png image.png

再在mysql-db文件夹中创建data-config.xml文件

image.png

添加如下内容,并保存退出

注意 <?xml 前面不能有空格

<?xml version="1.0" encoding="utf-8" ?>
   <dataConfig>
       <dataSource type="JdbcDataSource"
        driver="com.mysql.jdbc.Driver"
        url="jdbc:mysql://192.168.1.6:3306/sc"
        user="root"
        password="Rdj123456"
       />


   <document>
       <entity name="goods" query="select goods_id,goods_name,sales_price,goods_img from goods">
              <field column="goods_id" name="id" />
              <field column="goods_name" name="goodsName" />
              <field column="sales_price" name="salesPrice" />
              <field column="goods_img" name="goodsImg" />
       </entity>
   
   </document>


   </dataConfig>
image.png

3.添加document中的字段

进入goods/conf文件夹,输入vim进去编辑状态

image.png

在goods/conf/managed-schema文件中添加

注意: id,version,root 不能删除, text 不需要 可以删除

这里的id代表goodsId,不能改为goodsId

      <field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false" />
      <!-- docValues are enabled by default for long type so we don't need to index the version field  -->
      <field name="_version_" type="plong" indexed="false" stored="false"/>
      <field name="_root_" type="string" indexed="true" stored="false" docValues="false" />
      <field name="goodsName" type="text_ik" indexed="true" stored="true"  multiValued="false" />
      <field name="salesPrice" type="plong" indexed="true" stored="true"  multiValued="false" />
      <field name="goodsImg" type="string" indexed="true" stored="true"  multiValued="false" />      
image.png

保存并退出

4.导入data-config.xml文件

在goods/conf/solrconfig.xml文件中添加
image.png
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
  <lst name="defaults">
    <str name="config">mysql-db/data-config.xml</str>
  </lst>
</requestHandler>
image.png

5.重启solr

cd /usr/local/solr/solr-7.6.0/bin

image.png
image.png

6.导入数据

image.png

7.查询数据

image.png image.png

导入数据库

navicat连接数据信息


image.png

密码:Rdj123456

image.png image.png

sc.sql复制粘贴


image.png

相关文章

网友评论

      本文标题:如何在linux上面配置solr

      本文链接:https://www.haomeiwen.com/subject/uouudltx.html