- 服务器部署
- 官网地址 https://lucene.apache.org/solr/ 从官网下载http:/ /mirror.bit.edu.cn/apache/lucene/solr/8.4.1/solr-8.4.1.tgz 文件
- 使用 tar zxvf solr-8.4.1.tgz 进行解压
- 执行目录下/bin/solr start 启动即可 默认端口为8983
- 启动有可能会出现以下提示
*** [WARN] *** Your open file limit is currently 1024.
It should be set to 65000 to avoid operational disruption.
If you no longer wish to see this warning, set SOLR_ULIMIT_CHECKS to false in your profile or solr.in.sh
WARNING: Starting Solr as the root user is a security risk and not considered best practice. Exiting.
Please consult the Reference Guide. To override this check, start with argument '-force'这里会涉及到liunx服务器中文件限制数、进程限制数,这两个值
- 修改文件限制数:以root身份修改文件/etc/security/limits.conf.文件 末尾追加
* hard nofile 65000
* soft nofile 65000 - 修改进程限制数:以root身份修改文件/etc/security/limits.d/20-nproc.conf 文件(centOS6为90-nproc.conf),注:修改后,需要重新登录后才能生效
修改为:
* soft nproc 65535
* hard nproc 65535
root soft nproc unlimited
- 修改文件限制数:以root身份修改文件/etc/security/limits.conf.文件 末尾追加
- 添加自己的core库
- solr应用范例中的提供了多种类型的
- /opt/solr-8.4.1/example/example-DIH路径下都是自带的范例core,readme文档中有对应的说明介绍与启动方式
- 一般都是从数据库抓数据,搜索数据库。所以使用dih这个core
- 将/opt/solr-8.4.1/example/example-DIH/solr/db文件夹复制一份出来,命名为mycore
- 重启solr,打开控制台 http://192.168.90.233:8983/solr/ 地址,应该已经可以看到自己新建的mycore库了
- 接下来就是修改一些配置文件,配置一下数据库,sql语句就行了 conf下的db-data-config.xml文件,配置数据源,查询语句,字段映射
还有一个managed-schema文件 ,主要是solr字段的一下映射配置,基本上照着原来的,修改一下就ok啦
- 修改完成之后,需要重启服务才能生效噢 ,
都配置完成之后,在控制台手动dataimport一下,就能够通过关键字进行查询啦
-
springboot项目集成
-
pom中引入
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-solr</artifactId>
</dependency> -
如有Caused by: org.apache.logging.log4j.LoggingException: log4j-slf4j-impl cannot be present with log4j-to-slf4j 异常 , 则需要排除loggerjar包
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions> -
springboot application.properties配置文件
spring.data.solr.host=http://localhost:8983/solr/cms_core #需要指定具体的库
- 服务中注入 SolrClient接口 ,调用query方法即可查询
-
相关文章
- 12-18简单的流式布局(移动应用开发)
- 12-18基于python的机器学习开发环境安装(最简单的初步开发环境)
- 12-18angular7的多环境(开发环境、测试环境、生产环境)配置
- 12-18Windows下以太坊集成开发环境(Remix-IDE)搭建与智能合约的简单应用
- 12-18记一次开发平台测试环境的安装
- 12-18简单易用的leetcode开发测试工具(npm)
- 12-18Android开发—Flutter 中的事件驱动【附:Flutter开发环境搭建和测试全套PDF资料】
- 12-18Flutter 开发最大的优势是跨平台,利用 996 下班时间我写了简单的 Flutter 应用,想
- 12-18Python+selenium测试环境成功搭建,简单控制浏览器(firefox)接下来,继续学习其他浏览器上的测试环境搭建;学习Python语言,利用Python语言来写测试用例。加油!!!
- 12-18《使用wxWidgets进行跨平台程序开发》chap02——一个简单的应用程序