可以使用 Solr 自带的 Dataimport 功能把数据库中数据快速导入到 solr 中

必须保证 managed-schema 和数据库中表的列对应

1.修改配置文件

修改 solrconfig.xml,添加下面内容

<!-- 配置数据导入的处理器 -->
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
	<lst name="defaults">
		<!-- 加载 data-config.xml -->
		<str name="config">data-config.xml</str>
	</lst>
</requestHandler>

2.新建 data-config.xml

和 solrconfig.xml 同一目录下新建 data-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<dataConfig>
	<dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://192.168.51.241:3306/maven" user="root" password="root"/>
	<document>
		<entity name="product" query="SELECT id,name,price from product">
			<!-- 实现数据库的列和索引库的字段的映射 column 指定数据库的列表 name 指定索引库的字段名字,必须和 schema.xml 中定义的一样 -->
			<field column="id" name="id"/>
			<field column="name" name="name"/>
			<field column="price" name="price"/>
		</entity>
	</document>
</dataConfig>

3.添加 jar

向 solr-webapp 中添加三个 jar。在 dist 中两个还有一个数据库驱动。

 

4.操作

重启 solr 后,在可视化管理页面中进行数据导入

注意:
点击导入按钮后,要记得点击刷新按钮。