solr-7.7.3配置详解请看: solr-7.7.3配置详解,并且连接数据库 (一)

solr-7.7.3配置详解,跟springboot整合 (二)

solr包下载,里面有solr-7.7.3包和中文分词器、定时更新索引的包

Solr7.7定时自动重做全量更新和增量更新

第一步:将 solr-dataimport-scheduler.jar 包 放到 tomcat\webapps\solr\WEB-INF\lib 目录下
在这里插入图片描述
第二步:在 solrhome\conf 目录下, 没有 conf 目录则自行创建,将下载的 dataimport.properties 文件 放到 conf 目录下,根据需求改其参数

在这里插入图片描述
第三步: tomcat\webapps\solr\WEB-INF 目录下的 web.xml 文件内,新增监听器,将以下代码复制进去,放到 “web-app” 标签内

<listener>
	<listener-class>   
	 		org.apache.solr.handler.dataimport.scheduler.ApplicationListener
	</listener-class>
</listener> 

第四步:打开solrhome\collection1\conf\data-config.xml这个文件

新增如下,都是用于增量更新的配置,deltaQuery属性和deltaImportQuery属性,这里有个必须的字段,就是数据表中必须有个用于标注时间的字段

ps: 假设我上一次更新的时间是2020.12.02,那我下次增量更新就得拿这个时间,这个时间是存在solrhome\collection1\conf\dataimport.properties文件内的update_time属性的,拿这个时间去数据库 跟 这个标注时间的字段进行比较,在上一次更新时间之后的数据,全都是本次进行增量更新的数据.

<dataConfig>
<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
<dataSource type="JdbcDataSource" driver="com.mysql.cj.jdbc.Driver" url="jdbc:mysql://127.0.0.1:3306/demo?serverTimezone=UTC" user="root" password="root" />
<document>
	<!--name 使用数据库的表名 -->
    <entity name="bm_module_info" 
		query=" SELECT * FROM bm_module_info WHERE parentCode IS NOT NULL" 
		deltaImportQuery="select id,moduleCode,online_certificate,update_time from bm_module_info where id='${dataimporter.delta.id}'" 
	    deltaQuery="SELECT id FROM bm_module_info where update_time >'${dataimporter.update_time}'"
		<!--column 是数据库的表的列,name是solr中的列名 需要在schema.xml中配置规则  -->
		<field column="id" name="id"/>
        <field column="moduleCode" name="moduleCode"/>
		<field column="online_Certificate" name="online_Certificate"/>
		<field column="update_time" name="update_time"/>
    </entity>
</document>
</dataConfig>

如果要配置多个core:

solr-7.7.3配置详解请看:solr-7.7.3配置详解,并且连接数据库 (一)solr-7.7.3配置详解,跟springboot整合 (二)solr包下载,里面有solr-7.7.3包和中文分词器、定时更新索引的包Solr7.7定时自动重做全量更新和增量更新第一步:将 solr-dataimport-scheduler.jar 包 放到 tomcat\webapps\solr\WEB-INF\lib目录下第二步:在solrhome\conf 目录下, 没有conf目录则自行创建,将下载
背景: solr作为搜索工具,索引采用传统的lucene构建,当更新索引文件的时候,搜索并不会出现更新 solr确实做了精细的缓存机制,缓存跟一个特定的searcher绑定,与普通的缓存相比,solr的缓存并不会在一段时间之后失效,除非searcher发生改变 当你将solr集成到你的应用,而非采用solr服务器方式的时候,此时会带来麻烦,你不得不自己编写代码解决 通过分析sol...
之前已经介绍过如何使用solr和mysql建立索引,但索引一旦建立,之后新增的数据便不能插入了,除非每次新增数据都重新建立一遍索引,但这样太过耗时费力,故而,本章将介绍如何增量更新索引 1、  找到之前data-config.xml文件,打开并在query后面加入 deltaQuery="select TOPIC_ID,TOPIC_CONTENT from t_topicwhere TOPIC
import org.apache.solr.client.solrj.SolrQuery; import org.apache.solr.client.solrj.SolrRequest; import org.ap...
对于你提到的 Solr-7.7.3.tgz,Solr 是一个开源的搜索平台,用于构建强大的搜索和分析应用程序。Solr-7.7.3.tgz 是 Solr 的一个版本,具体来说是版本号为 7.7.3 的压缩文件。该文件通常包含了 Solr 的二进制程序和相关的配置文件,你可以使用它来部署和运行 Solr。 如果你有关于 Solr 或者该版本的具体问题,我会尽力回答。
org.springframework.web.client.ResourceAccessException: I/O error on POST request for ************ 37792