solr7.4配置mysql(三)
solr7.4配置mysql(三)
上一章为solr7.4配置中文分词(二),这里利用slor core的Dataimport面板可以将数据库中指定的sql语句的结果导入到solr索引库中。
- 在solrcore的conf目录下,有一个solrconfig.xml的配置文件,该配置文件用于配置solrcore的运行信息;
- 修改lib标签设置的路径;
- 将mysql-connector-java-x.x.x.jar拷贝到…\solr-7.4.0\contrib\db下;
- 添加配置
<!-- 配置dataimport和mysql-->
<lib dir="${solr.install.dir:../../../..}/contrib/db/lib/" regex=".*\.jar" />
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-dataimporthandler-7.4.0.jar" />
3. 配置连接信息
找到选定的Core(an_core)下的solrconfig.xml文件,在solrconfig.xml中,添加一个dataimport的requestHandler;
4. 在solrconfig.xml同一位置下创建data-config.xml 文件;
<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
<dataSource type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
responseBuffering="adaptive"
batchSize="1000"
url="jdbc:mysql://127.0.0.1:3306/an_core?characterEncoding=utf-8&useUnicode=true&zeroDateTimeBehavior=convertToNull"
user="root"
password="root"
/>
<document>
<entity name="book" query="SELECT * FROM book">
<field name="id" column="id" />
<field name="title" column="title" />
</entity>
</document>
</dataConfig>
- 打开managed-schema文件,在其中定义Field域。Field域的name属性需要和data-config.xml 的一致。
<field name="id" type="string" multiValued="false" indexed="true" required="true" stored="true"/>
<field name="title" type="text_zh" indexed="true" stored="true"/>
验证成果
重启solr,打开Solr的Dataimport面板;选择entity,点击Execute执行。