一、Solr8.5搭建

一、初识solr:

 

1、 什么是solr?

Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务。Solr可以独立运行在Jetty、Tomcat等这些Servlet容器中。
使用Solr 进行创建索引和搜索索引的实现方法很简单,如下:

  • 创建索引:
    客户端(可以是浏览器可以是Java程序)用 POST 方法向 Solr 服务器发送一个描述 Field 及其内容的 XML 文档,Solr服务器根据xml文档添加、删除、更新索引 。
  • 搜索索引:
    客户端(可以是浏览器可以是Java程序)用 GET方法向 Solr 服务器发送请求,然后对 Solr服务器返回Xml、json等格式的查询结果进行解析。Solr不提供构建页面UI的功能。Solr提供了一个管理界面,通过管理界面可以查询Solr的配置和运行情况。

Solr是一个可以独立运行的搜索服务器,使用solr进行全文检索服务的话,只需要通过http请求访问该服务器即可。

 
 

2、Solr和Lucene的区别:

Lucene是一个开放源代码的全文检索引擎工具包,它不是一个完整的全文检索应用。Lucene仅提供了完整的查询引擎和索引引擎,目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者以Lucene为基础构建全文检索应用。

Solr的目标是打造一款企业级的搜索引擎系统,它是基于Lucene一个搜索引擎服务,可以独立运行,通过Solr可以非常快速的构建企业的搜索引擎,通过Solr也可以高效的完成站内搜索功能。
在这里插入图片描述

 
 

2、Solr功能预览:

  • 灵活的查询语法;
  • 支持各种格式文件(Word、PDF)导入并索引;
  • 支持数据库数据导入并索引;
  • 分页查询和排序
  • Facet维度查询;
  • 自动完成功能;
  • 拼写检查;
  • 搜索关键字高亮显示;
  • Geo地理位置查询;
  • Group分组查询;
  • SolrCloud(分布式)

 
 

3、Solr下载:

下载地址:https://lucene.apache.org/solr/

Solr学习资源:
在这里插入图片描述

 
 

二、windows下搭建solr(部署solr至tomcat):

1、solr环境搭建:

 

1、 本地环境参数:
  1. 系统:windows 10
  2. tomcat 容器:tomcat 8.5.54
  3. jdk:jdk 1.8
  4. solr:8.5.0

注意:

  1. solr8.0及以上的版本,要使用tomcat8.0及以上的版本,否则启动报错,起不来!!!
  2. solr的版本一定要使用适合的tomcat版本,尽量solr版本和tomcat的版本一致,否则会报错。

 
 

2、打开下载solr压缩包,并解压,如图:

 
在这里插入图片描述

  • bin:solr的运行脚本
  • contrib:solr的一些扩展jar包,用于增强solr的功能。
  • dist:该目录包含build过程中产生的war和jar文件,以及相关的依赖文件。
  • docs:solr的API文档
  • example:solr工程的例子目录:
  • licenses:solr相关的一些许可信息

 
 
把solr‐8.x的server/solr‐webapp目录下边的webapp文件夹复制到tomcat/webapps的目录
下,并重命名为solr。
在这里插入图片描述
在这里插入图片描述

 
 
 

3、将solr‐8.x\server\lib\ext下的所有jar包拷贝到tomcat里的webapps\solr\WEB‐INF\lib下,

如下图:
在这里插入图片描述
在这里插入图片描述

 

4、将solr‐8.x\server\lib下 metrics开头的5个jar包也拷贝到tomcat里的webapps\solr\WEB‐INF\lib下:

在这里插入图片描述
在这里插入图片描述
 
 

5、在solr调试的过程中,如果提示jar包的缺失,可以去图中两个文件夹下找到相应的jar包,也拷贝到tomcat里的webapps\solr\WEB‐INF\lib下:

在这里插入图片描述
 
 

6、在tomcat里的webapps\solr\WEB‐INF下创建classes文件夹,将solr/server/resources下的文件拷贝到新建的classes文件夹下,如图:

在这里插入图片描述
在这里插入图片描述

注意:这里启动tomcat的时候会报错,是因为这里的配置主要与日志的配置有关,配好日志就不会报错了,可以稍后再调试。

 
 

7、在磁盘任意目录创建solr_home文件夹,把solr‐8.x 里面的solr文件夹下的内容放入solr_home中:

新建solr_home:
在这里插入图片描述
在这里插入图片描述
 
 

8、修改webapps\solr\WEB‐INF\web.xml里的solr\home路径,其中value的值为你创建的solr_home的绝对路径:

第一步:在web.xml中添加配置:
第二步:在web.xml中将value的值为你创建的solr_home的绝对路径:

<env-entry>
	<env-entry-name>solr/home</env-entry-name>//solr_home的名字
	<env-entry-value>D:/liupy/solrs/solr_home</env-entry-value>//solr_home的路径
	<env-entry-type>java.lang.String</env-entry-type>
</env-entry>

第三步:将<security‐constraint>注释掉,默认是打开的。

<security‐constraint>
    <web‐resource‐collection>
      <web‐resource‐name>Disable TRACE</web‐resource‐name>
      <url‐pattern>/</url‐pattern>
      <http‐method>TRACE</http‐method>
    </web‐resource‐collection>
    <auth‐constraint/>
  </security‐constraint>
  <security‐constraint>
    <web‐resource‐collection>
      <web‐resource‐name>Enable everything but TRACE</web‐resource‐name>
      <url‐pattern>/</url‐pattern>
      <http‐method‐omission>TRACE</http‐method‐omission>
    </web‐resource‐collection>
  </security‐constraint>

 
 

9、启动tomcat测试 http://localhost:8080/solr/index.html#/

在这里插入图片描述
 
 

2、创建solr的core:

 
 

1、 首先在solr_home中创建solr的core:testCore
  1. 在solr_home 文件夹下新建一个文件夹,文件夹名字自己定,这里取文件夹名为testCore,这个名字就是core的名字;
    在这里插入图片描述

  2. 将D:\liupy\solrs\solr_home\configsets\ _default\下的conf文件夹拷贝到testCore下;
    在这里插入图片描述
    在这里插入图片描述

  3. 启动 tomcat, http://localhost:8080/solr/index.html#/进入 solr Admin 管理页面;
     
     

2、 在界面中创建solr的core:testCore
  1. 在solr的图形页面中添加core即可, 名字和刚才新增名字相同,新增页面如下:

在这里插入图片描述

添加后:
在这里插入图片描述

 
 

 
 

3、solr7.5. 管理界面功能介绍:

  • Dashboard:
    仪表盘,显示了该Solr实例开始启动运行的时间、版本、系统资源、jvm等信息。

  • Logging:
    Solr运行日志信息。

  • Cloud:
    Cloud即SolrCloud,即Solr云(集群),当使用Solr Cloud模式运行时会显示此菜单,该部分功能此处演示没有,因为不是集群。

  • Core Admin:
    Solr Core的管理界面。在这里可以添加SolrCore实例(有bug,不推荐使用浏览器界面添加SolrCore)。

  • java properties
    Solr在JVM 运行环境中的属性信息,包括类路径、文件编码、jvm内存设置等信息。

  • Tread Dump:
    显示Solr Server中当前活跃线程信息,同时也可以跟踪线程运行栈信息。

  • Core selector:
    1、选择一个SolrCore进行详细操作,如下:
    在这里插入图片描述

    2、 Analysis:
    通过此界面可以测试索引分析器和搜索分析器的执行情况:

    在这里插入图片描述
     
     
    3、dataimport:
    可以定义数据导入处理器,从关系数据库将数据导入到Solr索引库中。默认没有配置,需要手工配置。
     
     
    4、Document:
    通过/update表示更新索引,solr默认根据id(唯一约束)域来更新Document的内容,如果根据id值搜索不到id域则会执行添加操作,如果找到则更新。

    通过此菜单可以创建索引、更新索引、删除索引等操作,界面如下:操作索引有多种格式:xml格式或者solr的格式:

    xml格式:

在这里插入图片描述

  • overwrite=“true” :
    solr在做索引的时候,如果文档已经存在,就用xml中的文档进行替换
  • commitWithin=“1000” :
    solr 在做索引的时候,每隔1000(1秒)毫秒,做一次文档提交。为了方便测试也可以在Document中立即提交,后添加“”。

 
solr的格式:
在这里插入图片描述
 
 
5、Query:
通过/select执行搜索索引,必须指定“q”查询条件方可搜索。
在这里插入图片描述
 
 

三、Solr索引创建:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Solr基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎 课程特点毕业后接触的第一个中间件就是Solr,在工作中用处广泛,为了便于大家快速掌握该技能,开始录制相关课程,该专栏特点如下:1.采用Solr最新版本视频录制,全网最新课程(Solr8.1于2019年5月16日发布)2.技能点全网最全,会结合工作经验,项目中用到的技能点都会有所涉及,更新章节比较全面3.适用范围广,从零基础到高级架构以及分布式集群都涵盖,适用初级、高级、项目实战等多个层次开发者4.多种维度辅助学习,采用独立solr粉丝群辅助教学,学员问题会及时得到解决,程序员突破圈 打卡制度,督促学员学习关注后再购买、 关注后再购买、 关注后再购买课程能得到什么1.快速学习到最新版本的全文检索技术,从视频、文章、圈子、粉丝交流等快速促进学习2.通过该技术,获得面试进阶指导3.结交人脉(庞大的粉丝群)..End初期学员100人,价格不会太高,也是为了帮助更多的开发者但是个人精力有限,所以限制条件如下1.求知欲强,有想向技术更深一层了解的2.乐于交流,喜欢探讨技术者3.学习惰性者慎入,购买后会督促大家学习,购买不是目的,学习到该技能才是该专栏的主要目的正式进入学习状态了吗,专栏群见。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值