这里记录linux上的安装过程

一、下载安装包

https://lucene.apache.org/solr/downloads.html

二、解压安装

这里我放倒了/usr/local/solr目录下

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

这个时候其实solr就已经可以启动了。执行一下命令。

/usr/local/solr/solr-8.1.1/bin solr start

但是如果是用root用户启动给出一个提示,并终止运行,需要加上一个修饰

/usr/local/solr/solr-8.1.1/bin solr start -force

这样就可以访问了。

http://ip+:8983/solr

接下来配置实例(solrcore)

cd /usr/local/solr/solr-8.1.1/server/solr

这里需要创一个实例的文件夹,我创建的是book。

创建好了需要干一件惊天动地的大事儿了copy,洋气吧~~~~

现在进到configsets文件夹下  cd /usr/local/solr/solr-8.1.1/server/solr/configsets  要复制的部分就是_default下的conf目录

cp -r /usr/local/solr/solr-8.1.1/server/solr/configsets/_default/conf/ /usr/local/solr/solr-8.1.1/server/solr/sysuser

然后需要把安装目下的dist目录中的solr-dataimporthandler-extras-xxx.jar、solr-dataimporthandler-8.1.1.jar复制到 /usr/local/solr/solr-8.1.1/server/solr-webapp/webapp/WEB-INF/lib 路径下

此外因为要连接到数据还要一个mysql的驱动包mysql-connector-java-8.0.18.jar。顺便把中文分词器也扔进去 ik-analyzer-8.3.0.jar。这要差不多需要的依赖就配好了,接下来就是配置文件了。

现在回到刚刚创建的实例的conf目录下 cd /usr/local/solr/solr-8.1.1/server/solr/sysuser/conf

在solrconfig.xml中添加一下节点,注意一定与其他的类似节点同级 可以直接搜索/select,在该节点之上添加

vi 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的配置文件,他是数据库的配置文件,默认是没有需要自己创建

touch data-config.xml

编辑该文件  vi data-config.xml

添加以下内容

<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
<dataSource type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/xuan?useUnicode=true&amp;characterEncoding=utf-8&amp;zeroDateTimeBehavior=convertToNull"
user="root"
password="lhfadmin"/>
<document>
<entity name="book" pk="id" transformer="DateFormatTransformer" query="SELECT id,name,jianjie FROM book">

<field name="userid" type="text_ik" indexed="true" stored="true"/>
<field name="username" type="text_ik" indexed="true" stored="true"/>
<field name="realName" type="text_ik" indexed="true" stored="true"/>
<field name="phone" type="text_ik" indexed="true" stored="true"/>

        </entity>
</document>
</dataConfig>

配置中文分词器,jar已经上边导入了,直接配置配置文件就好了

vi managed-schema

在最后便添加:

  <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>
<!-- 这是IK配置域,在这里不重要-->
<field name="title_ik" type="text_ik" indexed="true" stored="true"/>
<field name="content_ik" type="text_ik" indexed="true" stored="true" multiValued="true"/> <!--这是配置从数据库拿出来的数据配置域 -->

    <field name="userid" type="text_ik" indexed="true" stored="true"/>
    <field name="username" type="text_ik" indexed="true" stored="true"/>
    <field name="realName" type="text_ik" indexed="true" stored="true"/>
    <field name="phone" type="text_ik" indexed="true" stored="true"/>

这样就ok了,重启solr

/usr/local/solr/solr-8.1.1/bin/solr restart -force

如果这个位置没有刚才的实例,手动添加进去即可

点击上边的add core,

框红框的地方名字是一样的,和文件夹名字相同。剩下的没有改变就默认就好了。schema.xml和managed-schema可以理解成是一个玩意,不用理会。

添加后实例后就需要导入数据库的数据了

这个时候会发现并没有导入进去,看下日志发现

然后在conf目录下添加 dataimport.properties文件即可

然后重启

重新导入

这时查询可以看到导入的数据

搭建solr8的更多相关文章

  1. solr8.0的简单搭建(一)

    第一步,下载solr 进入solr官网进行下载:http://lucene.apache.org/solr/ 第二步: 将解压的solr放到自己指定的文件夹 第三步: 由于solr有自带服务器,所以可 ...

  2. solr8.2 环境搭建 配置中文分词器 ik-analyzer-solr8 详细步骤

    一.下载安装Apache Solr 8.2.0 下载地址:http://lucene.apache.org/solr/downloads.html 因为是部署部署在windows系统上,所以下载zip ...

  3. Solr集群环境搭建

    一.准备工作 首先保证已经安装JDK工具包: [root@localhost opt]# java -version java version "1.8.0_144" Java(T ...

  4. Solr单机环境搭建及部署

    一.定义 官网的定义: Solr是基于Lucene构建的流行,快速,开放源代码的企业搜索平台.它具有高度的可靠性,可伸缩性和容错能力,可提供分布式索引,复制和负载平衡查询,自动故障转移和恢复,集中式配 ...

  5. Online Judge(OJ)搭建(第一版)

    搭建 OJ 需要的知识(重要性排序): Java SE(Basic Knowledge, String, FileWriter, JavaCompiler, URLClassLoader, Secur ...

  6. Angular2入门系列教程1-使用Angular-cli搭建Angular2开发环境

    一直在学Angular2,百忙之中抽点时间来写个简单的教程. 2016年是前端飞速发展的一年,前端越来越形成了(web component)组件化的编程模式:以前Jquery通吃一切的田园时代一去不复 ...

  7. 总结:Mac前端开发环境的搭建(配置)

    新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...

  8. Angular企业级开发(5)-项目框架搭建

    1.AngularJS Seed项目目录结构 AngularJS官方网站提供了一个angular-phonecat项目,另外一个就是Angular-Seed项目.所以大多数团队会基于Angular-S ...

  9. 【分享】标准springMVC+mybatis项目maven搭建最精简教程

    文章由来:公司有个实习同学需要做毕业设计,不会搭建环境,我就代劳了,顺便分享给刚入门的小伙伴,我是自学的JAVA,所以我懂的.... (大图直接观看显示很模糊,请在图片上点击右键然后在新窗口打开看) ...

随机推荐

  1. 洛谷 P2658 汽车拉力比赛

    题目传送门 解题思路: 二分答案,然后bfs验证,如果从一个路标可以达到其它所有路标,则答案可行.知道找到最佳答案. AC代码: #include<iostream> #include&l ...

  2. org.springframework.dao.CannotAcquireLockException异常分析

    错误信息如下: 2017-09-27 16:27:16.153 - [com.ldyun.base.service.impl.BaseRetailOrderServiceImpl] - 新增零售商品订 ...

  3. Unity获取游戏对象详解

    我觉得Unity里面的Transform 和 GameObject就像两个双胞胎兄弟一样,这俩哥们很要好,我能直接找到你,你也能直接找到我.我看很多人喜欢在类里面去保存GameObject对象.解决G ...

  4. jenkins job 杀进程不成功解决办法

    jenkins_job #!/bin/bash set -ex #打印执行过程 BUILD_ID=DONTKILLME #防止自杀 ssh dataexa@192.168.1.65 > /dev ...

  5. Cpp:"->"和"."的区别

    environments:gcc version 8.1.0 (x86_64-posix-seh-rev0, Built by MinGW-W64 project) class data{ publi ...

  6. 解决 springweb Filter 读取request body miss body

    package com.lb.demo.listener; import java.io.BufferedReader; import java.io.ByteArrayInputStream; im ...

  7. 0CTF-2016-piapiapia-PHP反序列化长度变化尾部字符串逃逸

    0X00 扫描一下网站目录,得到网站源码,这里说下工具使用的是dirmap,亲测御剑不好用... 0x01 审计源码: index.php <?php require_once('class.p ...

  8. Thread--停止线程

    参考:http://blog.sina.com.cn/s/blog_6ca570ed01016mti.html Thread.interrupt()方法不会中断一个正在运行的线程.它的作用是,在线程受 ...

  9. springboot和shiro的整合

    直接贴上代码 1. 所需要的jar包 <dependency> <groupId>org.apache.shiro</groupId> <artifactId ...

  10. php的date()函数判断今天是星期几

    d  月份中的第几天,有前导零的 2 位数字 01 到 31 D  星期中的第几天,文本表示,3 个字母 Mon 到 Sun j  月份中的第几天,没有前导零 1 到 31 l  ("L&q ...