使用MySQL作为SOLR的索引源 首先,需要在solrconfig.xml中增加 lib dir="../../../dist/" regex="solr-dataimporthandler-.*\.jar" /!--需要增加依赖包,如果有数据库驱动,也需要增加到依赖路径中 --requestHandler name="/dataimport" class="org.apache.so
使用MySQL作为SOLR的索引源
首先,需要在solrconfig.xml中增加
1 2 3 4 5 6 7 8 | <lib dir= "../../../dist/" regex= "solr-dataimporthandler-.*\.jar" />
<!--需要增加依赖包,如果有数据库驱动,也需要增加到依赖路径中 -->
<requestHandler name= "/dataimport" class = "org.apache.solr.handler.dataimport.DataImportHandler" >
<lst name= "defaults" >
<str name= "config" >data-config.xml</str>
</lst>
</requestHandler>
|
Nach dem Login kopieren
?
在同一个目录下,新建一个数据库data-config.xml文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <?xml version= "1.0" encoding= "utf-8" ?>
<dataConfig>
<dataSource type= "JdbcDataSource" driver= "com.mysql.jdbc.Driver"
url= "jdbc:mysql://192.168.0.105:3306/test"
user= "hive"
password= "hive123" />
<document name= "cms" >
<entity name= "books" pk= "id" query= "select id,cat,name,price,inStock,author,series_t,sequence_i,genre_s from index_test" >
<field column= "id" name= "id" />
<field column= "cat" name= "cat" />
<field column= "name" name= "name" />
<field column= "price" name= "price" />
<field column= "inStock" name= "inStock" />
<field column= "author" name= "author" />
<field column= "series_t" name= "series_t" />
<field column= "sequence_i" name= "sequence_i" />
<field column= "genre_s" name= "genre_s" />
</entity>
</document>
</dataConfig>
|
Nach dem Login kopieren
?
然后确认好,你的schema.xml 是否与查询的字段是否匹配。
见附件
?
选择你的core:collection1
然后选择DataImport 然后进行full-import?

?
?除了使用控制台来导入数据,也可以通过URL来触发操作:
curl http://:/solr/dataimport?command=full-import.